-[{"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
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
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
}\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
\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
/*每次打点的记录表 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
}\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
\r
\r
public static String lastSitCheckTiimeyyyyMMddHHmmss="";\r
- public static long lastSitCheckStepCount=0;\r
+ public static long lastSitCheckStepCount=-1;\r
\r
\r
}\r
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
\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
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
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
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
}\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
-#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