From: SnickerSun Date: Wed, 13 Oct 2021 01:32:38 +0000 (+0800) Subject: 定位的 SkipMoveCheck修改为可以 保存配置,重启仍然有效。 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=5b4199bed7f10acc98e3f3f5573dbf45839cf63d;p=icsupport.git 定位的 SkipMoveCheck修改为可以 保存配置,重启仍然有效。 修改几个变量的名称,保证不会有歧义。 --- diff --git a/app/src/main/java/com/enqualcomm/support/Config.java b/app/src/main/java/com/enqualcomm/support/Config.java index 8af9d913..84ccd574 100644 --- a/app/src/main/java/com/enqualcomm/support/Config.java +++ b/app/src/main/java/com/enqualcomm/support/Config.java @@ -47,9 +47,12 @@ public class Config { public static boolean enableDataRoaming = false; - public static boolean forceMoveCheck = true; + public static boolean GpsForceMoveCheck = true; public static boolean forceWearCheck = true; + + private static final String KEYGlobalSkipMoveCheckFlag = "SkipMoveCheckGlobalFlag"; + private static final String KEYDurationOfVibration = "DurationVib"; private static final String KeyMasterVolume = "MasterVolume"; @@ -222,6 +225,13 @@ public class Config { } } + public static void setSkipMoveCheckFlagGlobal(Context context, boolean en) { + SharePreferenceUtil.setPrefBoolean(context, KEYGlobalSkipMoveCheckFlag, en); + } + + public static boolean getSkipMoveCheckFlagGlobal(Context context) { + return SharePreferenceUtil.getPrefBoolean(context, KEYGlobalSkipMoveCheckFlag, false); + } public static void setDurationOfVibration(Context context, int cycle) { SharePreferenceUtil.setPrefInt(context, KEYDurationOfVibration, cycle); } @@ -346,11 +356,13 @@ public class Config { public static void loadModCycleSettings(Runtime runtime) { Context context = runtime.getContextProxy().context; - ICLogger.i("current Cycles PPG " + runtime.getPpgTestCycleInMinutes() + " , LocationCycle " + runtime.getLocationInstance().getLocation_cycle() + " LocationMode " + runtime.getLocationInstance().getWorkingMod()); + //初始化定位模式 + LocationClient.setSkipMoveCheck(Config.getSkipMoveCheckFlagGlobal(context)); +// ICLogger.i("current Cycles PPG " + runtime.getPpgTestCycleInMinutes() + " , LocationCycle " + runtime.getLocationInstance().getLocation_cycle() + " LocationMode " + runtime.getLocationInstance().getWorkingMod()); runtime.setPpgTestCycleInMinutes(Config.getPPGTestCycleInMinutes(context)); runtime.getLocationInstance().setLocation_cycle(Config.getLocationCycle(context)); runtime.getLocationInstance().setWorkingMod(Config.getLocationMode(context)); - ICLogger.i("current Cycles PPG " + runtime.getPpgTestCycleInMinutes() + " , LocationCycle " + runtime.getLocationInstance().getLocation_cycle() + " LocationMode " + runtime.getLocationInstance().getWorkingMod()); + ICLogger.i("current Cycles PPG " + runtime.getPpgTestCycleInMinutes() + " , LocationCycle " + runtime.getLocationInstance().getLocation_cycle() + " LocationMode " + runtime.getLocationInstance().getWorkingMod() + " SkipMoveCheck " +LocationClient.getSkipMoveCheck()); int mastervolume = getMasterVolume(context); ICAudioManager.setMasterVolume(context, mastervolume); @@ -358,6 +370,7 @@ public class Config { int duration = getDurationOfVibration(context); VibrateUtil.setVibPattern(duration * 1000); + } public static void loadHearBeatSetting(Runtime runtime) { @@ -927,7 +940,7 @@ public class Config { noTempSensor = false; L004_BroadCastActionStrip = true; enableDataRoaming = true; - Config.forceMoveCheck = false; //即爱对gps不进行运动检测,此变量专门为了给其他协议进行强制运动检测用的。 + Config.GpsForceMoveCheck = false; //即爱对gps不进行运动检测,此变量专门为了给其他协议进行强制运动检测用的。 } else if (Config.custom_name.equals("l005")) { ConfigAlarm(Runtime.AlarmType.ALARM_CUTOFF, true); @@ -949,7 +962,7 @@ public class Config { noTempSensor = true; L004_BroadCastActionStrip = true; enableDataRoaming = true; - forceMoveCheck = false; //即爱对gps不进行运动检测,此变量专门为了给其他协议进行强制运动检测用的。 + GpsForceMoveCheck = false; //即爱对gps不进行运动检测,此变量专门为了给其他协议进行强制运动检测用的。 } else if (custom_name.equals("YQ") || custom_name.equals("YQ_EN")) { ConfigAlarm(Runtime.AlarmType.ALARM_CUTOFF, true); ConfigAlarm(Runtime.AlarmType.ALARM_ILLEGAL_CUTOFF, true); @@ -1022,7 +1035,7 @@ public class Config { ConfigAlarm(Runtime.AlarmType.ALARM_LOCK_WATCH, true); ConfigAlarm(Runtime.AlarmType.ALARM_WEARED, true); ConfigAlarm(Runtime.AlarmType.ALARM_ANTIOFF, true); - forceMoveCheck = false; //对定位不进行运动检测。 + GpsForceMoveCheck = false; //对定位不进行运动检测。 DefaultLocationMode = CUSTOM_MOD8_GPS; DefaultLocationCycle = 15 * 60; @@ -1044,7 +1057,7 @@ public class Config { } else if (Config.custom_name.equals("L02") || Config.custom_name.equals("L03") || Config.custom_name.equals("L05")) { //L02 - Config.forceMoveCheck = false; //即爱对gps不进行运动检测,此变量专门为了给其他协议进行强制运动检测用的。 + Config.GpsForceMoveCheck = false; //即爱对gps不进行运动检测,此变量专门为了给其他协议进行强制运动检测用的。 DefaultLocationMode = NORMAL_MOD; DefaultLocationCycle = 900; DefaultPPGTestCycleInMinutes = 0; @@ -1057,7 +1070,7 @@ public class Config { Config.ConfigAlarm(Runtime.AlarmType.ALARM_WEARED, true); Config.ConfigAlarm(Runtime.AlarmType.ALARM_ANTIOFF, true); enableSleep = true; - Config.forceMoveCheck = false; + Config.GpsForceMoveCheck = false; DefaultLocationMode = CUSTOM_MOD8_GPS; DefaultLocationCycle = 15 * 60; DefaultPPGTestCycleInMinutes = 15; @@ -1067,7 +1080,7 @@ public class Config { Config.ConfigAlarm(Runtime.AlarmType.ALARM_LOWBATTERY, true); Config.ConfigAlarm(Runtime.AlarmType.ALARM_WEARED, true); Config.ConfigAlarm(Runtime.AlarmType.ALARM_ANTIOFF, true); - Config.forceMoveCheck = true; + Config.GpsForceMoveCheck = true; DefaultLocationMode = CUSTOM_MOD8_GPS; DefaultLocationCycle = 5 * 60; DefaultPPGTestCycleInMinutes = 0; diff --git a/app/src/main/java/com/enqualcomm/support/CoreService.java b/app/src/main/java/com/enqualcomm/support/CoreService.java index b39577d7..a432d08c 100644 --- a/app/src/main/java/com/enqualcomm/support/CoreService.java +++ b/app/src/main/java/com/enqualcomm/support/CoreService.java @@ -832,6 +832,7 @@ public class CoreService extends Service { Config.setConfigInitFlag(this, 1); } + Config.dumpAlarmConfig(); //A9专用变量 初始化剪断,脱腕报警开关(这个开关是界面提示显示用的,上面的Config.ConfigAlarm 是上报服务器消息的开关) runtime.setNeddReportCutoff(Config.getNeedCutOff(this)); diff --git a/app/src/main/java/com/enqualcomm/support/ICSmsManager.java b/app/src/main/java/com/enqualcomm/support/ICSmsManager.java index d4376f00..fef6d2a7 100644 --- a/app/src/main/java/com/enqualcomm/support/ICSmsManager.java +++ b/app/src/main/java/com/enqualcomm/support/ICSmsManager.java @@ -618,9 +618,11 @@ public class ICSmsManager extends BroadcastReceiver { sendSMS(phoneNumber, "SkipMoveCheck " + LocationClient.getSkipMoveCheck() + "!"); } else if (tmp[1].equals("true")) { LocationClient.setSkipMoveCheck(true); + Config.setSkipMoveCheckFlagGlobal(mContext,true); sendSMS(phoneNumber, "set SkipMoveCheck " + LocationClient.getSkipMoveCheck() + " success!"); } else if (tmp[1].equals("false")) { LocationClient.setSkipMoveCheck(false); + Config.setSkipMoveCheckFlagGlobal(mContext,false); sendSMS(phoneNumber, "set SkipMoveCheck " + LocationClient.getSkipMoveCheck() + " success!"); } else { sendSMS(phoneNumber, "skipmovecheck format error!"); diff --git a/app/src/main/java/com/enqualcomm/support/LocationClient.java b/app/src/main/java/com/enqualcomm/support/LocationClient.java index 19b9e5c6..adc52892 100644 --- a/app/src/main/java/com/enqualcomm/support/LocationClient.java +++ b/app/src/main/java/com/enqualcomm/support/LocationClient.java @@ -917,11 +917,11 @@ public class LocationClient { updateStepCount();//update StepCount,保证每次定位前,计步数据是最新的。防止丢数据。 //如果没有动,且超时。则跳过定位 NoMoveTimeout = checkNoMoveTimeoutForBT(); - ICLogger.i("BT NoMoveTimeout " + NoMoveTimeout + ", forceLocation=" + forceLocation + ", Config.forceMoveCheck=" + Config.forceMoveCheck + ", skipMoveCheck=" + skipMoveCheck); + ICLogger.i("BT NoMoveTimeout " + NoMoveTimeout + ", forceLocation=" + forceLocation + ", Config.GpsForceMoveCheck=" + Config.GpsForceMoveCheck + ", skipMoveCheck=" + skipMoveCheck); // 不强制定位 且 (WorkingMod 不是紧急模式 或者 强制进行移动检测),且 没有移动过 if ((forceLocation != 1) && - (Config.forceMoveCheck == true) && + (Config.GpsForceMoveCheck == true) && (NoMoveTimeout) && (skipMoveCheck == false)) { ICLogger.i("No Move ,skip BT location!"); @@ -936,11 +936,11 @@ public class LocationClient { updateStepCount();//update StepCount,保证每次定位前,计步数据是最新的。防止丢数据。 //如果没有动,且超时。则跳过定位 NoMoveTimeout = checkNoMoveTimeout(); - ICLogger.i(" NoMoveTimeout " + NoMoveTimeout + ", forceLocation=" + forceLocation + ", Config.forceMoveCheck=" + Config.forceMoveCheck + ", skipMoveCheck=" + skipMoveCheck); + ICLogger.i(" NoMoveTimeout " + NoMoveTimeout + ", forceLocation=" + forceLocation + ", Config.GpsForceMoveCheck=" + Config.GpsForceMoveCheck + ", skipMoveCheck=" + skipMoveCheck); // 不强制定位 且 (WorkingMod 不是紧急模式 或者 强制进行移动检测),且 没有移动过 if ((forceLocation != 1) && - (Config.forceMoveCheck == true) && + (Config.GpsForceMoveCheck == true) && (NoMoveTimeout) && (skipMoveCheck == false)) { ICLogger.i("No Move ,skip BT location2!"); @@ -961,7 +961,7 @@ public class LocationClient { NoMoveTimeout = checkNoMoveTimeout(); // 不强制定位 且 (WorkingMod 不是紧急模式 或者 强制进行移动检测),且 没有移动过 if ((forceLocation != 1) && - (((mod == ICLocation.NORMAL_MOD) || (mod == ICLocation.LOWPOWER_MOD) || (mod == ICLocation.CUSTOM_MOD8_WIFI)) || Config.forceMoveCheck == true) && + (((mod == ICLocation.NORMAL_MOD) || (mod == ICLocation.LOWPOWER_MOD) || (mod == ICLocation.CUSTOM_MOD8_WIFI)) || Config.GpsForceMoveCheck == true) && (NoMoveTimeout) && (skipMoveCheck == false)) { ICLogger.i("No Move ,skip location!"); return; diff --git a/app/src/main/java/com/enqualcomm/support/toolActivity.java b/app/src/main/java/com/enqualcomm/support/toolActivity.java index bb2710d7..81fa44a8 100644 --- a/app/src/main/java/com/enqualcomm/support/toolActivity.java +++ b/app/src/main/java/com/enqualcomm/support/toolActivity.java @@ -138,13 +138,13 @@ public class toolActivity extends Activity { btnSlog.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - if(Config.forceMoveCheck) + if(Config.GpsForceMoveCheck) { - Config.forceMoveCheck=false; + Config.GpsForceMoveCheck=false; }else{ - Config.forceMoveCheck=true; + Config.GpsForceMoveCheck=true; } - Util.ShowToast(CoreService.getInstance().runtime,"Set ForceMoveCheck "+ Config.forceMoveCheck); + Util.ShowToast(CoreService.getInstance().runtime,"Set GpsForceMoveCheck "+ Config.GpsForceMoveCheck); } });