添加未佩戴5秒停止检测,以便省电
authorsnickersun <snickersun@qq.com>
Wed, 5 Feb 2020 13:29:24 +0000 (21:29 +0800)
committersnickersun <snickersun@qq.com>
Wed, 5 Feb 2020 13:29:24 +0000 (21:29 +0800)
app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java
app/version_code.properties

index 99fbded..4ec918d 100644 (file)
@@ -78,6 +78,10 @@ public class HeartRateManager extends AbstractInvokeHandlerService {
             startPPG();\r
           }\r
             break;\r
+          case 300: {\r
+            stopPPG();\r
+          }\r
+          break;\r
         }\r
         return false;\r
       }\r
@@ -120,6 +124,7 @@ public class HeartRateManager extends AbstractInvokeHandlerService {
   static heartRateStatus.HEARTRATE_WORKINGSTAT currentStat;\r
   static int delayCount;\r
   static int testCount;\r
+  static int notWaredCount;\r
   private final int MAX_TESTTIMES=30000;//最大延迟测试时间为30秒\r
 \r
 \r
@@ -146,6 +151,14 @@ public class HeartRateManager extends AbstractInvokeHandlerService {
     }\r
 \r
 \r
+    if (currentStat== heartRateStatus.HEARTRATE_WORKINGSTAT.HEARTRATE_NOTWARED){\r
+      notWaredCount--;\r
+      if( notWaredCount <0){ //没有佩戴次数到限制后,停止检测\r
+        Logger.i("HEARTRATE_NOTWARED 超过时限,取消检测报告!");\r
+        stopPPG();\r
+      }\r
+    }\r
+\r
     if (currentStat==heartRateStatus.HEARTRATE_WORKINGSTAT.HEARTRATE_TEST_SUCCESS){\r
       runtime.getHRS().setLastHeartrate(PPG,BPH,BPL);\r
       delayCount--;\r
@@ -157,6 +170,9 @@ public class HeartRateManager extends AbstractInvokeHandlerService {
     }\r
     runtime.getHRS().setHeartrateStat(currentStat);\r
 \r
+\r
+\r
+\r
     testCount--;\r
     if (testCount<0)\r
     {\r
@@ -166,7 +182,6 @@ public class HeartRateManager extends AbstractInvokeHandlerService {
 \r
   }\r
 \r
-\r
   private void sendAndStopPPG(){\r
     //结束和发送数据\r
     mHandler.sendEmptyMessage(100);\r
@@ -187,7 +202,8 @@ public class HeartRateManager extends AbstractInvokeHandlerService {
   public void startPPG(){\r
     if (ICJniUtils.isPPGavailable()==1 && isTimerStarted==false) {\r
       currentStat=heartRateStatus.HEARTRATE_WORKINGSTAT.HEARTRATE_OPEN;\r
-      delayCount=3;//检测成功后三秒发送数据\r
+      delayCount=4;//检测成功后4秒发送数据\r
+      notWaredCount=5; //初始化没有佩戴的检测次数5,连续5秒没有佩戴则取消检测\r
       testCount=MAX_TESTTIMES;//测试MAX_TESTTIMES后没有结果也要强制退出\r
       isTimerStarted=true;\r
       ICJniUtils.enablePPG();\r
index 09cba91..13edcd7 100644 (file)
@@ -1,2 +1,2 @@
-#Tue Feb 04 19:00:07 CST 2020\r
-VERSION_CODE=341\r
+#Wed Feb 05 20:55:30 CST 2020\r
+VERSION_CODE=343\r