解决了温度,心率的停止问题.
authorTrillGates <WilliamTrillGates@gmail.com>
Fri, 10 Jun 2022 03:45:25 +0000 (11:45 +0800)
committerTrillGates <WilliamTrillGates@gmail.com>
Fri, 10 Jun 2022 03:45:25 +0000 (11:45 +0800)
app/src/main/java/com/ic/work/SensorDataService.java

index 3680c00..c2c839d 100644 (file)
@@ -322,10 +322,8 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp
                 public void unRegisterCallback(IHeartRateSensorCallback callback) {
                     ICLogger.d("heartRateSensorService unRegisterCallback ==> " + callback);
                     heartRateCallbacks.unregister(callback);
-                    if (heartRateCallbacks.getRegisteredCallbackCount() == 0) {
-                        //停止测试
-                        BloodInfoHelper.getInstance().stopTest();
-                    }
+                    //停止测试
+                    BloodInfoHelper.getInstance().stopTest();
                 }
 
                 @Override
@@ -489,10 +487,10 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp
         public void unRegisterCallback(ITempSensorCallback callback) {
             temperatureCallbacks.unregister(callback);
             //判断数量,如果数量为空了,说明不需要测试了
-            if (temperatureCallbacks.getRegisteredCallbackCount() == 0) {
-                //停止测试
-                stopTemperatureTest();
-            }
+            int registeredCallbackCount = temperatureCallbacks.getRegisteredCallbackCount();
+            //停止测试,有一个是常驻的,就是protocol的回调
+            ICLogger.d("registeredCallbackCount ==> " + registeredCallbackCount);
+            stopTemperatureTest();
             ICLogger.d("tempSensorService unRegisterCallback ==> " + callback);
         }