修改了SOS的拨号逻辑
authorTrillGates <williamtrillgates@gmail.com>
Tue, 26 Oct 2021 11:55:51 +0000 (19:55 +0800)
committerTrillGates <williamtrillgates@gmail.com>
Tue, 26 Oct 2021 11:55:51 +0000 (19:55 +0800)
app/src/main/java/com/ic/sos/SOSPresenter.java

index 53c44af..ea998c1 100644 (file)
@@ -124,8 +124,14 @@ public class SOSPresenter {
             boolean isLastOne = currentCallIndex == phoneNumList.size() - 1;
             //是否有拨通hasRemoteAnswer
             boolean isLastLoop = currentLoopGroupTime == loopTime;
+            ICLogger.d("isLastOne ==> " + isLastOne);
+            ICLogger.d("hasRemoteAnswer ==> " + hasRemoteAnswer);
             //有接听的,拨完这轮,没接听的,一直拨到最后一轮
-            doCallNext = (hasRemoteAnswer && !isLastOne) || !isLastLoop;
+            if (hasRemoteAnswer) {
+                doCallNext = !isLastOne;
+            } else {
+                doCallNext = !isLastLoop;
+            }
         } else if ("loop".equals(callWay)) {
             //连续拨打完目标轮询组的次数
             doCallNext = currentLoopGroupTime != loopTime;
@@ -151,6 +157,7 @@ public class SOSPresenter {
             handler.postDelayed(this::doSosCall, 1000);
         } else {
             ICLogger.d("结束界面...");
+            hasRemoteAnswer = false;
             stateValue.postValue(SOSState.FINISH);
         }
     }