From a1eeb65482bea32d93aa4e28e8b52d185ed1ff0d Mon Sep 17 00:00:00 2001 From: snickersun Date: Wed, 5 Feb 2020 21:29:24 +0800 Subject: [PATCH] =?utf8?q?=E6=B7=BB=E5=8A=A0=E6=9C=AA=E4=BD=A9=E6=88=B45?= =?utf8?q?=E7=A7=92=E5=81=9C=E6=AD=A2=E6=A3=80=E6=B5=8B=EF=BC=8C=E4=BB=A5?= =?utf8?q?=E4=BE=BF=E7=9C=81=E7=94=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../support/service/HeartRateManager.java | 20 +++++++++++++++++-- app/version_code.properties | 4 ++-- 2 files changed, 20 insertions(+), 4 deletions(-) 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 99fbded1..4ec918d5 100644 --- a/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java +++ b/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java @@ -78,6 +78,10 @@ public class HeartRateManager extends AbstractInvokeHandlerService { startPPG(); } break; + case 300: { + stopPPG(); + } + break; } return false; } @@ -120,6 +124,7 @@ public class HeartRateManager extends AbstractInvokeHandlerService { static heartRateStatus.HEARTRATE_WORKINGSTAT currentStat; static int delayCount; static int testCount; + static int notWaredCount; private final int MAX_TESTTIMES=30000;//最大延迟测试时间为30秒 @@ -146,6 +151,14 @@ public class HeartRateManager extends AbstractInvokeHandlerService { } + if (currentStat== heartRateStatus.HEARTRATE_WORKINGSTAT.HEARTRATE_NOTWARED){ + notWaredCount--; + if( notWaredCount <0){ //没有佩戴次数到限制后,停止检测 + Logger.i("HEARTRATE_NOTWARED 超过时限,取消检测报告!"); + stopPPG(); + } + } + if (currentStat==heartRateStatus.HEARTRATE_WORKINGSTAT.HEARTRATE_TEST_SUCCESS){ runtime.getHRS().setLastHeartrate(PPG,BPH,BPL); delayCount--; @@ -157,6 +170,9 @@ public class HeartRateManager extends AbstractInvokeHandlerService { } runtime.getHRS().setHeartrateStat(currentStat); + + + testCount--; if (testCount<0) { @@ -166,7 +182,6 @@ public class HeartRateManager extends AbstractInvokeHandlerService { } - private void sendAndStopPPG(){ //结束和发送数据 mHandler.sendEmptyMessage(100); @@ -187,7 +202,8 @@ public class HeartRateManager extends AbstractInvokeHandlerService { public void startPPG(){ if (ICJniUtils.isPPGavailable()==1 && isTimerStarted==false) { currentStat=heartRateStatus.HEARTRATE_WORKINGSTAT.HEARTRATE_OPEN; - delayCount=3;//检测成功后三秒发送数据 + delayCount=4;//检测成功后4秒发送数据 + notWaredCount=5; //初始化没有佩戴的检测次数5,连续5秒没有佩戴则取消检测 testCount=MAX_TESTTIMES;//测试MAX_TESTTIMES后没有结果也要强制退出 isTimerStarted=true; ICJniUtils.enablePPG(); diff --git a/app/version_code.properties b/app/version_code.properties index 09cba91f..13edcd71 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,2 +1,2 @@ -#Tue Feb 04 19:00:07 CST 2020 -VERSION_CODE=341 +#Wed Feb 05 20:55:30 CST 2020 +VERSION_CODE=343 -- 2.17.1