From: snickersun Date: Tue, 4 Aug 2020 10:32:25 +0000 (+0800) Subject: release V473 X-Git-Url: http://git.snicker.com.cn/sitemap.xml?a=commitdiff_plain;h=09e4ef5683ddaf960267d5270578923da3c2cf25;p=protocol_srv.git release V473 添加 睡眠及 久坐判断。 增强接收消息的健壮性判断 --- diff --git a/app/release/ICSer_V473_2008041826_release.apk b/app/release/ICSer_V473_2008041826_release.apk new file mode 100644 index 00000000..5e04da3a Binary files /dev/null and b/app/release/ICSer_V473_2008041826_release.apk differ diff --git a/app/release/output.json b/app/release/output.json index 718578a5..02b605e7 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -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 diff --git a/app/src/main/java/com/enqualcomm/support/CoreService.java b/app/src/main/java/com/enqualcomm/support/CoreService.java index 4f4913d1..9a2e5df6 100644 --- a/app/src/main/java/com/enqualcomm/support/CoreService.java +++ b/app/src/main/java/com/enqualcomm/support/CoreService.java @@ -684,13 +684,18 @@ public class CoreService extends Service { Runtime.lastSitCheckStepCount=runtime.getTotalStepCount(); Runtime.lastSitCheckTiimeyyyyMMddHHmmss=TimeUtil.getSystemTime3(); } + int keepsitRange=Config.getKeepSitRangeInMinutes(this); int minutes=(int)TimeUtil.diffBetween2DateInMinutes(Runtime.lastSitCheckTiimeyyyyMMddHHmmss,dateyyyyMMDDhhmmss); - if (minutes > Config.getKeepSitRangeInMinutes(this)){ + ICLogger.i("SitCheck last SitCheckTime "+ Runtime.lastSitCheckTiimeyyyyMMddHHmmss + " , current checktime "+dateyyyyMMDDhhmmss); + ICLogger.i("SitCheck minutes "+ minutes + " , keepsitRange "+keepsitRange); + if (minutes >keepsitRange && keepsitRange>0){ if ( (runtime.getTotalStepCount() - Runtime.lastSitCheckStepCount)/minutes < Config.KeepSitJudgementRefValue){ //平均 每分钟活动数 小于参考久坐计步值,表示久坐 + ICLogger.i("SitCheck 平均 每分钟活动数 小于参考久坐计步值,表示久坐"); runtime.getContextProxy().sendBroadcastSitLongAlarm(); //广播久坐消息 }else{ //只要 平均每分钟活动数大于参考值,则重置 lastCheckSitTime 以及 lastSitCheckStepCount + ICLogger.i("SitCheck 平均每分钟活动数大于参考值,则重置 lastCheckSitTime 以及 lastSitCheckStepCount"); Runtime.lastSitCheckStepCount=runtime.getTotalStepCount(); Runtime.lastSitCheckTiimeyyyyMMddHHmmss=TimeUtil.getSystemTime3(); @@ -706,6 +711,7 @@ public class CoreService extends Service { public void updateSleepDate(){ String dateyyyyMMDDhhmmss=TimeUtil.getSystemTime3(); String sleepdate=TimeUtil.getCurrentSleepRecordDate(dateyyyyMMDDhhmmss); + ICLogger.i("updateSleepDate "+sleepdate); if(TimeUtil.isInSleepRange == true) { runtime.getDbHelper().insertSleepRecord(new SleepRecord(dateyyyyMMDDhhmmss,sleepdate,runtime.getTotalStepCount())); runtime.sleepDataReported=false; //只要记录过数据 就证明有数据没有report @@ -749,7 +755,7 @@ public class CoreService extends Service { } } public int onStartCommand(Intent paramIntent, int paramInt1, int paramInt2) { - if (paramIntent != null) { + if (paramIntent != null && paramIntent.getAction()!=null) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append("onStartCommand action="); stringBuilder.append(paramIntent.getAction()); diff --git a/app/src/main/java/com/enqualcomm/support/MySqlitOpenHelper.java b/app/src/main/java/com/enqualcomm/support/MySqlitOpenHelper.java index c26d8e55..06895d35 100644 --- a/app/src/main/java/com/enqualcomm/support/MySqlitOpenHelper.java +++ b/app/src/main/java/com/enqualcomm/support/MySqlitOpenHelper.java @@ -8,7 +8,7 @@ import com.enqualcomm.support.utils.ICLogger; public class MySqlitOpenHelper extends SQLiteOpenHelper { - public MySqlitOpenHelper(Context paramContext) { super(paramContext, "data", null, 7); } + public MySqlitOpenHelper(Context paramContext) { super(paramContext, "data", null, 8); } public void onCreate(SQLiteDatabase sqlite) { sqlite.execSQL("CREATE TABLE CONTACT(_id INTEGER PRIMARY KEY AUTOINCREMENT ,CATEGORY INTEGER ,NAME TEXT ,NUMBER TEXT ,ICON TEXT ,EXTRA TEXT)"); @@ -54,7 +54,7 @@ Pushtxt、message /*每次打点的记录表 SLEEP_DATE 代表记录睡眠的日期,例如 22日上午7:00的计入到21日的睡眠记录中。 DATE代表记录的时间,此出应该等于上文的 22日 7:00 */ sqlite.execSQL("CREATE TABLE SLEEP_RECORDS(_id INTEGER PRIMARY KEY AUTOINCREMENT ,SLEEP_DATE TEXT,DATE TEXT, STEPCOUNT INTEGER ,ROLLTIMES INTEGER ,STATUS TEXT )"); /*计算后的分值,每天会在睡眠结束后计算Records获得*/ - sqlite.execSQL("CREATE TABLE SLEEP_STATUS(_id INTEGER PRIMARY KEY AUTOINCREMENT ,DATE TEXT , DEEP_SLEEP INTEGER , LIGHT_SLEEP INTEGER ,SCORE INTEGER )"); + sqlite.execSQL("CREATE TABLE SLEEP_STATUS(_id INTEGER PRIMARY KEY AUTOINCREMENT , DATE TEXT , DEEP_SLEEP INTEGER , LIGHT_SLEEP INTEGER ,SCORE INTEGER )"); /*久坐 根据时间段进行检测,时间段内,根据计步变化确认其是否在坐着。 @@ -67,9 +67,9 @@ Pushtxt、message } public void onUpgrade(SQLiteDatabase sqlite, int oldDBversion, int newDBversion) { - if (oldDBversion < 7) { + if (oldDBversion <8) { ICLogger.i("数据库升级了"); - sqlite.execSQL("ALTER TABLE DEVICESTATUS ADD COLUMN IS_ALARM"); + sqlite.execSQL("ALTER TABLE SLEEP_STATUS ADD COLUMN SLEEP_DATE"); } } } diff --git a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java index f26332ee..145a3805 100644 --- a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java +++ b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java @@ -628,7 +628,7 @@ public class Runtime { public static String lastSitCheckTiimeyyyyMMddHHmmss=""; - public static long lastSitCheckStepCount=0; + public static long lastSitCheckStepCount=-1; } diff --git a/app/src/main/java/com/enqualcomm/support/bean/SleepInfo.java b/app/src/main/java/com/enqualcomm/support/bean/SleepInfo.java index 2c854632..9475112a 100644 --- a/app/src/main/java/com/enqualcomm/support/bean/SleepInfo.java +++ b/app/src/main/java/com/enqualcomm/support/bean/SleepInfo.java @@ -89,7 +89,10 @@ public class SleepInfo { for( i = 0;i < turnovertimesArray.size();i++ ){ if (i>0){ turnovertime = (turnovertimesArray.get(i).stepCount - turnovertimesArray.get(i-1).stepCount); - long minutes=TimeUtil.diffBetween2DateInMinutes(turnovertimesArray.get(i-1).date,turnovertimesArray.get(i).date); + String before=turnovertimesArray.get(i-1).date; + String after =turnovertimesArray.get(i).date; + ICLogger.i("diffBetween2DateInMinutes before "+before+", after "+after); + long minutes=TimeUtil.diffBetween2DateInMinutes(before,after); if (minutes>0){ long avg_turnovertime= turnovertime/minutes; //平均每分钟翻滚次数 if ( avg_turnovertime<= DEEP_TURN_LEVEL) { //小于深度睡眠标准都属于深度睡眠 diff --git a/app/src/main/java/com/enqualcomm/support/service/Deliver.java b/app/src/main/java/com/enqualcomm/support/service/Deliver.java index 2a58bb11..82ffa6e7 100644 --- a/app/src/main/java/com/enqualcomm/support/service/Deliver.java +++ b/app/src/main/java/com/enqualcomm/support/service/Deliver.java @@ -244,7 +244,7 @@ public class Deliver extends AbstractConnectionService { public static void sendLocationMSG( String Msg){ - if(Msg.trim().isEmpty()){ + if(Msg==null ||Msg.trim().isEmpty()){ ICLogger.i("命令为空,跳过发送!"); return ; } diff --git a/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java b/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java index 35c29bc6..c2725926 100644 --- a/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java +++ b/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java @@ -322,6 +322,7 @@ public static void triggerPPGtest(){ String bpl = bundle3.getString(key_bpl); String spo2 = bundle3.getString(key_spo2); + ICLogger.i("get MSG_WHAT_PPG ppg "+ppg + " , bph "+bph + " , bpl "+bpl + " , spo2 "+spo2); if (ppg == null || bph == null || bpl==null ||ppg.isEmpty()||bph.isEmpty()||bpl.isEmpty()) { ICLogger.i("MSG_WHAT_PPG Data is null or empty ! Skip!"); callback(message.replyTo, Constants.RESULT_ERROR); diff --git a/app/src/main/java/com/enqualcomm/support/utils/DBHelper.java b/app/src/main/java/com/enqualcomm/support/utils/DBHelper.java index e1a67bae..3ccb0fee 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/DBHelper.java +++ b/app/src/main/java/com/enqualcomm/support/utils/DBHelper.java @@ -937,7 +937,7 @@ public class DBHelper { break; } sleeprecordList.add(new SleepRecord( - cr_sleeprecord.getString(1), cr_sleeprecord.getString(2), cr_sleeprecord.getInt(3))); + cr_sleeprecord.getString(cr_sleeprecord.getColumnIndex("DATE")), cr_sleeprecord.getString(cr_sleeprecord.getColumnIndex("SLEEP_DATE")), cr_sleeprecord.getInt(cr_sleeprecord.getColumnIndex("STEPCOUNT")))); } } return sleeprecordList; @@ -963,11 +963,21 @@ public class DBHelper { where.append("DATE like '"); where.append(dateyyyyMMddHHmmss); where.append("'"); + ICLogger.i("Query SleepScore "+where); Cursor cr_sleeprecord = pcr.query(table, (String[])null, where.toString(), (String[])null, (String)null); if (cr_sleeprecord != null) { - int scroe=cr_sleeprecord.getInt(cr_sleeprecord.getColumnIndex("SCORE")); + int score=0; + if (cr_sleeprecord.getCount()> 0) { + if (cr_sleeprecord.moveToFirst()) { + int index = cr_sleeprecord.getColumnIndex("SCORE"); + score = cr_sleeprecord.getInt(4); + ICLogger.i("get SleepScore "+score + " column index "+index); + } + + } cr_sleeprecord.close(); - return scroe; + ICLogger.i("get SleepScore "+ score); + return score; } return 0; } diff --git a/app/src/main/java/com/enqualcomm/support/utils/TimeUtil.java b/app/src/main/java/com/enqualcomm/support/utils/TimeUtil.java index 2b44ffe3..66a2031a 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/TimeUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/TimeUtil.java @@ -292,10 +292,9 @@ public class TimeUtil { } public static long diffBetween2DateInMinutes(String dateBefore_yyyyMMDDhhmmss, String dateAfter_yyyyMMDDhhmmss){ - long date1_ms=parseDatetiime(dateBefore_yyyyMMDDhhmmss).getTime(); - long date2_ms=parseDatetiime(dateAfter_yyyyMMDDhhmmss).getTime(); - return (date2_ms-date1_ms)/60000 ; + long date1_ms=parseDatetiime(dateBefore_yyyyMMDDhhmmss).getTime(); + long date2_ms=parseDatetiime(dateAfter_yyyyMMDDhhmmss).getTime(); + return (date2_ms-date1_ms)/60000 ; } - } diff --git a/app/version_code.properties b/app/version_code.properties index aab734b3..d6747ec5 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,2 +1,2 @@ -#Thu Jul 30 19:41:32 CST 2020 -VERSION_CODE=466 +#Tue Aug 04 18:26:37 CST 2020 +VERSION_CODE=473