release V473
authorsnickersun <scy@incartech.cn>
Tue, 4 Aug 2020 10:32:25 +0000 (18:32 +0800)
committersnickersun <scy@incartech.cn>
Tue, 4 Aug 2020 10:32:25 +0000 (18:32 +0800)
  添加 睡眠及 久坐判断。
  增强接收消息的健壮性判断

app/release/ICSer_V473_2008041826_release.apk [new file with mode: 0644]
app/release/output.json
app/src/main/java/com/enqualcomm/support/CoreService.java
app/src/main/java/com/enqualcomm/support/MySqlitOpenHelper.java
app/src/main/java/com/enqualcomm/support/bean/Runtime.java
app/src/main/java/com/enqualcomm/support/bean/SleepInfo.java
app/src/main/java/com/enqualcomm/support/service/Deliver.java
app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java
app/src/main/java/com/enqualcomm/support/utils/DBHelper.java
app/src/main/java/com/enqualcomm/support/utils/TimeUtil.java
app/version_code.properties

diff --git a/app/release/ICSer_V473_2008041826_release.apk b/app/release/ICSer_V473_2008041826_release.apk
new file mode 100644 (file)
index 0000000..5e04da3
Binary files /dev/null and b/app/release/ICSer_V473_2008041826_release.apk differ
index 718578a..02b605e 100644 (file)
@@ -1 +1 @@
-[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":466,"versionName":"2007301941","enabled":true,"outputFile":"ICSer_V466_2007301941_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V466_2007301941_release.apk","properties":{}}]
\ No newline at end of file
+[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":473,"versionName":"2008041826","enabled":true,"outputFile":"ICSer_V473_2008041826_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V473_2008041826_release.apk","properties":{}}]
\ No newline at end of file
index 4f4913d..9a2e5df 100644 (file)
@@ -684,13 +684,18 @@ public class CoreService extends Service {
                  Runtime.lastSitCheckStepCount=runtime.getTotalStepCount();\r
                  Runtime.lastSitCheckTiimeyyyyMMddHHmmss=TimeUtil.getSystemTime3();\r
              }\r
+             int keepsitRange=Config.getKeepSitRangeInMinutes(this);\r
              int minutes=(int)TimeUtil.diffBetween2DateInMinutes(Runtime.lastSitCheckTiimeyyyyMMddHHmmss,dateyyyyMMDDhhmmss);\r
-            if (minutes > Config.getKeepSitRangeInMinutes(this)){\r
+             ICLogger.i("SitCheck last SitCheckTime "+ Runtime.lastSitCheckTiimeyyyyMMddHHmmss + " , current checktime "+dateyyyyMMDDhhmmss);\r
+             ICLogger.i("SitCheck minutes "+ minutes + " , keepsitRange "+keepsitRange);\r
+             if (minutes >keepsitRange && keepsitRange>0){\r
                 if ( (runtime.getTotalStepCount() - Runtime.lastSitCheckStepCount)/minutes < Config.KeepSitJudgementRefValue){\r
                     //平均 每分钟活动数 小于参考久坐计步值,表示久坐\r
+                    ICLogger.i("SitCheck 平均 每分钟活动数 小于参考久坐计步值,表示久坐");\r
                     runtime.getContextProxy().sendBroadcastSitLongAlarm(); //广播久坐消息\r
                 }else{\r
                     //只要 平均每分钟活动数大于参考值,则重置 lastCheckSitTime 以及 lastSitCheckStepCount\r
+                    ICLogger.i("SitCheck 平均每分钟活动数大于参考值,则重置 lastCheckSitTime 以及 lastSitCheckStepCount");\r
                     Runtime.lastSitCheckStepCount=runtime.getTotalStepCount();\r
                     Runtime.lastSitCheckTiimeyyyyMMddHHmmss=TimeUtil.getSystemTime3();\r
 \r
@@ -706,6 +711,7 @@ public class CoreService extends Service {
     public void updateSleepDate(){\r
         String dateyyyyMMDDhhmmss=TimeUtil.getSystemTime3();\r
         String sleepdate=TimeUtil.getCurrentSleepRecordDate(dateyyyyMMDDhhmmss);\r
+        ICLogger.i("updateSleepDate "+sleepdate);\r
         if(TimeUtil.isInSleepRange == true) {\r
             runtime.getDbHelper().insertSleepRecord(new SleepRecord(dateyyyyMMDDhhmmss,sleepdate,runtime.getTotalStepCount()));\r
             runtime.sleepDataReported=false; //只要记录过数据 就证明有数据没有report\r
@@ -749,7 +755,7 @@ public class CoreService extends Service {
         }\r
     }\r
     public int onStartCommand(Intent paramIntent, int paramInt1, int paramInt2) {\r
-        if (paramIntent != null) {\r
+        if (paramIntent != null && paramIntent.getAction()!=null) {\r
             StringBuilder stringBuilder = new StringBuilder();\r
             stringBuilder.append("onStartCommand action=");\r
             stringBuilder.append(paramIntent.getAction());\r
index c26d8e5..06895d3 100644 (file)
@@ -8,7 +8,7 @@ import com.enqualcomm.support.utils.ICLogger;
 \r
 \r
 public class MySqlitOpenHelper extends SQLiteOpenHelper {\r
-  public MySqlitOpenHelper(Context paramContext) { super(paramContext, "data", null, 7); }\r
+  public MySqlitOpenHelper(Context paramContext) { super(paramContext, "data", null, 8); }\r
   \r
   public void onCreate(SQLiteDatabase sqlite) {\r
     sqlite.execSQL("CREATE TABLE CONTACT(_id INTEGER PRIMARY KEY AUTOINCREMENT ,CATEGORY INTEGER ,NAME TEXT ,NUMBER TEXT ,ICON TEXT ,EXTRA TEXT)");\r
@@ -54,7 +54,7 @@ Pushtxt、message
     /*每次打点的记录表  SLEEP_DATE 代表记录睡眠的日期,例如 22日上午7:00的计入到21日的睡眠记录中。 DATE代表记录的时间,此出应该等于上文的 22日 7:00 */\r
     sqlite.execSQL("CREATE TABLE SLEEP_RECORDS(_id INTEGER PRIMARY KEY AUTOINCREMENT ,SLEEP_DATE TEXT,DATE TEXT, STEPCOUNT INTEGER ,ROLLTIMES INTEGER ,STATUS TEXT )");\r
     /*计算后的分值,每天会在睡眠结束后计算Records获得*/\r
-    sqlite.execSQL("CREATE TABLE SLEEP_STATUS(_id INTEGER PRIMARY KEY AUTOINCREMENT ,DATE TEXT , DEEP_SLEEP INTEGER , LIGHT_SLEEP INTEGER ,SCORE INTEGER )");\r
+    sqlite.execSQL("CREATE TABLE SLEEP_STATUS(_id INTEGER PRIMARY KEY AUTOINCREMENT , DATE TEXT , DEEP_SLEEP INTEGER , LIGHT_SLEEP INTEGER ,SCORE INTEGER )");\r
 \r
 /*久坐\r
 根据时间段进行检测,时间段内,根据计步变化确认其是否在坐着。\r
@@ -67,9 +67,9 @@ Pushtxt、message
   }\r
   \r
   public void onUpgrade(SQLiteDatabase sqlite, int oldDBversion, int newDBversion) {\r
-    if (oldDBversion < 7) {\r
+    if (oldDBversion <8) {\r
       ICLogger.i("数据库升级了");\r
-      sqlite.execSQL("ALTER TABLE DEVICESTATUS ADD COLUMN IS_ALARM");\r
+      sqlite.execSQL("ALTER TABLE SLEEP_STATUS ADD COLUMN SLEEP_DATE");\r
     }\r
   }\r
 }\r
index f26332e..145a380 100644 (file)
@@ -628,7 +628,7 @@ public class Runtime {
 \r
 \r
     public static String lastSitCheckTiimeyyyyMMddHHmmss="";\r
-    public static long lastSitCheckStepCount=0;\r
+    public static long lastSitCheckStepCount=-1;\r
 \r
 \r
 }\r
index 2c85463..9475112 100644 (file)
@@ -89,7 +89,10 @@ public class SleepInfo {
             for( i = 0;i < turnovertimesArray.size();i++ ){\r
                 if (i>0){\r
                     turnovertime = (turnovertimesArray.get(i).stepCount - turnovertimesArray.get(i-1).stepCount);\r
-                    long minutes=TimeUtil.diffBetween2DateInMinutes(turnovertimesArray.get(i-1).date,turnovertimesArray.get(i).date);\r
+                    String before=turnovertimesArray.get(i-1).date;\r
+                    String after =turnovertimesArray.get(i).date;\r
+                    ICLogger.i("diffBetween2DateInMinutes before "+before+", after "+after);\r
+                    long minutes=TimeUtil.diffBetween2DateInMinutes(before,after);\r
                     if (minutes>0){\r
                         long avg_turnovertime= turnovertime/minutes; //平均每分钟翻滚次数\r
                         if (  avg_turnovertime<= DEEP_TURN_LEVEL) { //小于深度睡眠标准都属于深度睡眠\r
index 2a58bb1..82ffa6e 100644 (file)
@@ -244,7 +244,7 @@ public class Deliver extends AbstractConnectionService {
 \r
 public static void sendLocationMSG( String Msg){\r
 \r
-    if(Msg.trim().isEmpty()){\r
+    if(Msg==null ||Msg.trim().isEmpty()){\r
       ICLogger.i("命令为空,跳过发送!");\r
       return ;\r
     }\r
index 35c29bc..c272592 100644 (file)
@@ -322,6 +322,7 @@ public static void triggerPPGtest(){
         String bpl = bundle3.getString(key_bpl);\r
         String spo2 = bundle3.getString(key_spo2);\r
 \r
+        ICLogger.i("get MSG_WHAT_PPG ppg "+ppg + " , bph "+bph + " , bpl "+bpl + " , spo2 "+spo2);\r
         if (ppg == null || bph == null || bpl==null  ||ppg.isEmpty()||bph.isEmpty()||bpl.isEmpty()) {\r
           ICLogger.i("MSG_WHAT_PPG Data is null or empty ! Skip!");\r
           callback(message.replyTo, Constants.RESULT_ERROR);\r
index e1a67ba..3ccb0fe 100644 (file)
@@ -937,7 +937,7 @@ public class DBHelper {
           break;\r
         }\r
         sleeprecordList.add(new SleepRecord(\r
-                cr_sleeprecord.getString(1), cr_sleeprecord.getString(2), cr_sleeprecord.getInt(3)));\r
+                cr_sleeprecord.getString(cr_sleeprecord.getColumnIndex("DATE")), cr_sleeprecord.getString(cr_sleeprecord.getColumnIndex("SLEEP_DATE")), cr_sleeprecord.getInt(cr_sleeprecord.getColumnIndex("STEPCOUNT"))));\r
       }\r
     }\r
     return sleeprecordList;\r
@@ -963,11 +963,21 @@ public class DBHelper {
     where.append("DATE like '");\r
     where.append(dateyyyyMMddHHmmss);\r
     where.append("'");\r
+    ICLogger.i("Query SleepScore "+where);\r
     Cursor cr_sleeprecord = pcr.query(table, (String[])null, where.toString(), (String[])null, (String)null);\r
     if (cr_sleeprecord != null) {\r
-        int scroe=cr_sleeprecord.getInt(cr_sleeprecord.getColumnIndex("SCORE"));\r
+        int score=0;\r
+        if (cr_sleeprecord.getCount()> 0) {\r
+            if (cr_sleeprecord.moveToFirst()) {\r
+                int index = cr_sleeprecord.getColumnIndex("SCORE");\r
+                score = cr_sleeprecord.getInt(4);\r
+                ICLogger.i("get SleepScore "+score + " column index "+index);\r
+            }\r
+\r
+        }\r
         cr_sleeprecord.close();\r
-        return scroe;\r
+        ICLogger.i("get SleepScore "+ score);\r
+        return score;\r
     }\r
     return 0;\r
   }\r
index 2b44ffe..66a2031 100644 (file)
@@ -292,10 +292,9 @@ public class TimeUtil {
   }\r
 \r
   public static long diffBetween2DateInMinutes(String dateBefore_yyyyMMDDhhmmss, String dateAfter_yyyyMMDDhhmmss){\r
-      long date1_ms=parseDatetiime(dateBefore_yyyyMMDDhhmmss).getTime();\r
-      long date2_ms=parseDatetiime(dateAfter_yyyyMMDDhhmmss).getTime();\r
-      return (date2_ms-date1_ms)/60000 ;\r
+    long date1_ms=parseDatetiime(dateBefore_yyyyMMDDhhmmss).getTime();\r
+    long date2_ms=parseDatetiime(dateAfter_yyyyMMDDhhmmss).getTime();\r
+    return (date2_ms-date1_ms)/60000 ;\r
   }\r
-\r
 }\r
 \r
index aab734b..d6747ec 100644 (file)
@@ -1,2 +1,2 @@
-#Thu Jul 30 19:41:32 CST 2020\r
-VERSION_CODE=466\r
+#Tue Aug 04 18:26:37 CST 2020\r
+VERSION_CODE=473\r