From: TrillGates Date: Fri, 22 Oct 2021 02:18:57 +0000 (+0800) Subject: 重构代码 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=810978bfce2b6a6f8547668dc9ac02bd1ecf32f9;p=icsos.git 重构代码 --- diff --git a/app/src/main/java/com/ic/sos/MainActivity.java b/app/src/main/java/com/ic/sos/MainActivity.java index 5977aba..826e317 100644 --- a/app/src/main/java/com/ic/sos/MainActivity.java +++ b/app/src/main/java/com/ic/sos/MainActivity.java @@ -15,7 +15,7 @@ import android.support.v4.app.INotificationSideChannel; * - 拨通不再往下拨号-(有一个通了,不再往下拨号)-stop * - 拨通还往下拨号,此次组拨完结束为止(即使拨通了,把本组拨完)- continue * - 拨通了往下拨号,直到轮询完(即使拨通了,也要按轮询次数拨完)- loop - * - 拨号超时(每次拨号计时,不管是否拨通都是挂断)- persist.sys.sos.time(默认值为-1,按系统的拨号超时) + * - 拨号超时(每次拨号计时,不管是否拨通都是挂断)- persist.sys.sos.time(默认值为0,按系统的拨号超时) */ public class MainActivity extends AppCompatActivity { @@ -30,6 +30,18 @@ public class MainActivity extends AppCompatActivity { initObserver(); } + @Override + protected void onResume() { + super.onResume(); + //当UI重新可见的时候,检查是否需要进行下一个拨号 + //TODO: + } + + @Override + public void onBackPressed() { + //把返回键屏蔽掉 + } + private void initObserver() { sosPresenter.stateValue.observe(this, sosState -> { //状态变化,改变UI diff --git a/app/src/main/java/com/ic/sos/SOSPresenter.java b/app/src/main/java/com/ic/sos/SOSPresenter.java index 41e0550..2ed2dd0 100644 --- a/app/src/main/java/com/ic/sos/SOSPresenter.java +++ b/app/src/main/java/com/ic/sos/SOSPresenter.java @@ -221,6 +221,7 @@ public class SOSPresenter { * 根据策略去拨号 */ private void doSosCall() { + stateValue.postValue(SOSState.CALLING); ICLogger.d("==========================================="); ICLogger.d("currentCallIndex ==> " + currentCallIndex); ICLogger.d("phoneNumList.size() ==> " + phoneNumList.size()); @@ -236,7 +237,7 @@ public class SOSPresenter { String targetPhoneNum = phoneNumList.get(currentCallIndex); callPhone(targetPhoneNum); //开始准备超时 - if (callDuration != -1) { + if (callDuration != 0) { //需要按时挂断 handler.removeCallbacks(endCallTask); handler.postDelayed(endCallTask, callDuration * 1000); @@ -287,13 +288,13 @@ public class SOSPresenter { private void initCallDuration() { String callDurationStr = SystemUtils.getSystemProperties("persist.sys.sos.time"); if (TextUtils.isEmpty(callDurationStr)) { - callDuration = -1; + callDuration = 0; } else { try { callDuration = Integer.parseInt(callDurationStr); } catch (Exception e) { e.printStackTrace(); - callDuration = -1; + callDuration = 0; } } } diff --git a/app/src/main/java/com/ic/sos/SOSState.java b/app/src/main/java/com/ic/sos/SOSState.java index 770feaf..a379749 100644 --- a/app/src/main/java/com/ic/sos/SOSState.java +++ b/app/src/main/java/com/ic/sos/SOSState.java @@ -4,4 +4,6 @@ public enum SOSState { NONE/*默认状态*/, NO_SOS_NUM/*没有SOS号码*/, NO_SIM/*没有sim卡*/, + CALLING/*正在拨号*/, + CALL_FAILED/*拨号失败*/ }