From: snickersun Date: Sun, 27 Sep 2020 12:10:37 +0000 (+0800) Subject: release V637 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=0dfa7cfbb7ba518a299734949c959ac2b7852953;p=protocol_srv.git release V637 解决 蓝牙扫描及GPS扫描的运动检测不起作用问题。 当前所有定位都受运动检测控制。但是心率,体温没有受控! 后面再加上佩戴检测就可以控制心率 体温了。 --- diff --git a/app/release/ICSer_V636_2009271647_release.apk b/app/release/ICSer_V636_2009271647_release.apk deleted file mode 100644 index 5196cb34..00000000 Binary files a/app/release/ICSer_V636_2009271647_release.apk and /dev/null differ diff --git a/app/release/ICSer_V635_2009271639_release.apk b/app/release/ICSer_V637_2009272008_release.apk similarity index 78% rename from app/release/ICSer_V635_2009271639_release.apk rename to app/release/ICSer_V637_2009272008_release.apk index 9c1c00b8..8ca1b0b7 100644 Binary files a/app/release/ICSer_V635_2009271639_release.apk and b/app/release/ICSer_V637_2009272008_release.apk differ diff --git a/app/release/output.json b/app/release/output.json index 01ed4876..e939c125 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":635,"versionName":"2009271639","enabled":true,"outputFile":"ICSer_V635_2009271639_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V635_2009271639_release.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":637,"versionName":"2009272008","enabled":true,"outputFile":"ICSer_V637_2009272008_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V637_2009272008_release.apk","properties":{}}] \ No newline at end of file diff --git a/app/src/main/java/com/enqualcomm/support/LocationClient.java b/app/src/main/java/com/enqualcomm/support/LocationClient.java index 5dbacc84..102ad104 100644 --- a/app/src/main/java/com/enqualcomm/support/LocationClient.java +++ b/app/src/main/java/com/enqualcomm/support/LocationClient.java @@ -374,7 +374,8 @@ public class LocationClient { }else if (msg.what == msgWhat_StartLocationProcess) { if (runtime.bleInfo.btMacList.size() > 0) { //有蓝牙搜索要求则 先进行蓝牙扫描 - btHelper.scanBLE(); + if (needLocationForBT()) + btHelper.scanBLE(); } else { //没有蓝牙搜索要求,就正常定位 startLocationProcess(runtime.getLocationInstance().getWorkingMod()); @@ -383,7 +384,9 @@ public class LocationClient { if (runtime.bleInfo.btMacList.size() > 0) { //有蓝牙搜索要求则 先进行蓝牙扫描 scanBLEOnly=true; - btHelper.scanBLE(); + + if (needLocationForBT()) + btHelper.scanBLE(); } }else if (msg.what == msgWhat_StartSOSLocationProcess){ startSOSLocation=true;//启动SOS定位,为了快速响应,只要wifi定位即可。 @@ -437,7 +440,7 @@ public class LocationClient { timeout=true; } - if (noMove==true && (timeout==true || gps_nosignal==true)){ + if (NoMoveTimeout==true && (timeout==true || gps_nosignal==true)){ //没有移动,GPS超时或者没信号都会给 计数 加 1 gpsTimeoutCountOnNoMove++; } @@ -695,6 +698,7 @@ public void updateCellInfo() { private static boolean NoMoveAndNoGPSsignalSkipGpsFlag=false; private static boolean noMove=false; + private static boolean NoMoveTimeout=false; private static boolean last_noMove=false; private static final int MaxNoMoveTimeout=3*60*1000; //3分钟 private static long first_NoMove_timestamp=0; @@ -709,40 +713,55 @@ public void updateCellInfo() { noMove=runtime.getLastStepCount() == runtime.getTotalStepCount(); runtime.updateFZDDevStatusMoving(!noMove); //设置当前运动状态 - + ICLogger.i(" checkNoMoveTimeout last_noMove "+last_noMove+" noMove "+noMove); if (last_noMove==false&& noMove==true){ first_NoMove_timestamp=System.currentTimeMillis(); }else if (noMove==false){ first_NoMove_timestamp=0; } + last_noMove=noMove; //属于 判断是否 不动的状态超时 if (noMove==true&& first_NoMove_timestamp>0.01 && System.currentTimeMillis()-first_NoMove_timestamp > MaxNoMoveTimeout){ + ICLogger.i(" checkNoMoveTimeout true "); return true; }else{ + ICLogger.i("checkNoMoveTimeout false"); return false; } } - public void startLocationProcess(int mod){ - + private boolean needLocationForBT(){ updateStepCount();//update StepCount,保证每次定位前,计步数据是最新的。防止丢数据。 - ICLogger.i("forceLocation="+forceLocation+", WorkingMod="+mod+", isLocating="+isLocating+", lastStep="+runtime.getLastStepCount()+", currentStep="+ runtime.getTotalStepCount()); - if (isLocating && 1!=forceLocation) { //如果是强制定位,则即使是正在定位,也要执行,因为有时模式变换的时候,需要取消上一次定位信息,马上新的模式定位。 - ICLogger.i("locating ,skip location!"); - return; - } - //如果没有动,且超时。则跳过定位 - boolean NoMoveTimeout=checkNoMoveTimeout(); + //如果没有动,且超时。则跳过定位 + NoMoveTimeout=checkNoMoveTimeout(); // 不强制定位 且 (WorkingMod 不是紧急模式 或者 强制进行移动检测),且 没有移动过 if ( ( forceLocation != 1 ) && - ((( mod == ICLocation.NORMAL_MOD ) || ( mod == ICLocation.LOWPOWER_MOD ) || (mod == ICLocation.CUSTOM_MOD8_WIFI ) ) || Config.forceMoveCheck==true) && + (Config.forceMoveCheck==true) && (NoMoveTimeout) && (skipMoveCheck ==false )){ ICLogger.i("No Move ,skip location!"); - return ; + return false; } - - if (noMove){ + return true; + } + public void startLocationProcess(int mod){ + updateStepCount();//update StepCount,保证每次定位前,计步数据是最新的。防止丢数据。 + ICLogger.i("forceLocation="+forceLocation+", WorkingMod="+mod+", isLocating="+isLocating+", lastStep="+runtime.getLastStepCount()+", currentStep="+ runtime.getTotalStepCount()); + if (isLocating && 1!=forceLocation) { //如果是强制定位,则即使是正在定位,也要执行,因为有时模式变换的时候,需要取消上一次定位信息,马上新的模式定位。 + ICLogger.i("locating ,skip location!"); + return; + } + //如果没有动,且超时。则跳过定位 + NoMoveTimeout=checkNoMoveTimeout(); + // 不强制定位 且 (WorkingMod 不是紧急模式 或者 强制进行移动检测),且 没有移动过 + if ( ( forceLocation != 1 ) && + ((( mod == ICLocation.NORMAL_MOD ) || ( mod == ICLocation.LOWPOWER_MOD ) || (mod == ICLocation.CUSTOM_MOD8_WIFI ) ) || Config.forceMoveCheck==true) && + (NoMoveTimeout) && (skipMoveCheck ==false )){ + ICLogger.i("No Move ,skip location!"); + return ; + } + + if (NoMoveTimeout){ // 记录gps 无信号或者timeout的次数,超过5 就会停止使用gps定位,只要有一次 移动,或者设置为wifi定位,则清零。 if (gpsTimeoutCountOnNoMove>= MaxGpsTimeoutCountOnNoMove){ NoMoveAndNoGPSsignalSkipGpsFlag=true; diff --git a/app/version_code.properties b/app/version_code.properties index a9618b2a..a140a23d 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,2 +1,2 @@ -#Sun Sep 27 16:39:23 CST 2020 -VERSION_CODE=635 +#Sun Sep 27 20:08:39 CST 2020 +VERSION_CODE=637