修复如果resetCount前关机,当天就不会重置计步的问题。增加逻辑,当天开机第一次,会重置计步。
authorsnicker <snickersun@163.com>
Mon, 4 May 2020 00:40:45 +0000 (08:40 +0800)
committersnicker <snickersun@163.com>
Mon, 4 May 2020 00:40:45 +0000 (08:40 +0800)
app/src/main/java/com/enqualcomm/support/Config.java
app/src/main/java/com/enqualcomm/support/CoreService.java

index 6a02d90..8f34673 100644 (file)
@@ -7,10 +7,13 @@ import android.text.TextUtils;
 import com.enqualcomm.support.bean.ICLocation;\r
 import com.enqualcomm.support.bean.Runtime;\r
 import com.enqualcomm.support.utils.SharPreferenceUtil;\r
+import com.enqualcomm.support.utils.TimeUtil;\r
 \r
 import org.json.JSONException;\r
 import org.json.JSONStringer;\r
 \r
+import java.util.concurrent.TimeUnit;\r
+\r
 import static com.enqualcomm.support.utils.Util.getSystemProperties;\r
 \r
 public class Config {\r
@@ -260,5 +263,29 @@ public class Config {
     return SharPreferenceUtil.getPrefInt(context,KeyLocationMode, ICLocation.NORMAL_MOD);\r
   }\r
 \r
+  private static final String KeyBootUpDate = "bootupdate";\r
+  private static int bootupcount=0;\r
+  public static boolean logBootDate(Context context){\r
+  //如果时间和最后一次时间不同,则重置,否则启动次数+1\r
+    if (isFirstBootToday(context)) {\r
+      SharPreferenceUtil.setPrefString(context, KeyBootUpDate, TimeUtil.getSystemTime4());\r
+      return true;\r
+    }else{\r
+      bootupcount++;\r
+      return false;\r
+    }\r
+  }\r
+\r
+  private static String getLastBootupDate(Context context){\r
+    return SharPreferenceUtil.getPrefString(context,KeyBootUpDate,"");\r
+  }\r
+  private static boolean isFirstBootToday(Context context){\r
+\r
+    if (TimeUtil.getSystemTime4()!=getLastBootupDate(context)) {\r
+      bootupcount=1;\r
+      return true;\r
+    }else\r
+      return false;\r
+  }\r
 }\r
 \r
index 0bb854d..ad69682 100644 (file)
@@ -523,6 +523,11 @@ public class CoreService extends Service {
 \r
         //保证获取正确的计步数据及其他参数初始化\r
         loadStepCount();\r
+\r
+        if (Config.logBootDate(this)){\r
+            resetStepCount();\r
+        }\r
+\r
         //初始化ServerHeartBeat Cycle\r
         Config.loadHearBeatSetting(runtime);\r
         //初始化PPG,LocationMod,LocationCycle\r
@@ -635,6 +640,8 @@ public class CoreService extends Service {
 \r
         //备份DB数据到sd cache目录,为调试方便\r
         getDBFile();\r
+\r
+\r
     }\r
 \r
     public static void DevliverStringMessage(String cmd){\r