add listener get for api.
authorTrillGates <williamtrillgates@gmail.com>
Fri, 24 Sep 2021 08:08:44 +0000 (16:08 +0800)
committerTrillGates <williamtrillgates@gmail.com>
Fri, 24 Sep 2021 08:08:44 +0000 (16:08 +0800)
app/src/main/aidl/com/ic/work/IExInfoService.aidl
app/src/main/java/com/ic/work/SensorDataService.java

index 40c98e3..a11974e 100644 (file)
@@ -18,4 +18,6 @@ interface IExInfoService {
   oneway void registerCallback(in IExInfoCallback callback);
   //取消接口注册
   oneway void unregisterCallback(in IExInfoCallback callback);
+  //当前监听状态
+  boolean isListening();
 }
\ No newline at end of file
index 43c1e23..a1f80bc 100644 (file)
@@ -82,6 +82,7 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp
     private int mBoardCheckCycle;
     //主板温度上限阀值
     private int mBoardTopLimit;
+    private boolean isBoardTemperatureListen;
 
     // 有效值的最大出现次数
     @Nullable
@@ -379,12 +380,14 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp
 
         @Override
         public void getBoardTemperature() {
+            ICLogger.d("getBoardTemperature...");
             //获取主板的温度
             doBoardTempCheck(false);
         }
 
         @Override
         public void setBoardTempCheckCycle(int second) {
+            ICLogger.d("setBoardTempCheckCycle..." + second);
             exInfoValueSp.edit().putInt("check_cycle", second).apply();
             //设置主板温度的测试周期
             mBoardCheckCycle = exInfoValueSp.getInt("check_cycle", 30);
@@ -392,6 +395,7 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp
 
         @Override
         public void setBoardTempTopLimit(float temp) {
+            ICLogger.d("setBoardTempTopLimit ==> " + temp);
             //设置温度的上限阀值
             exInfoValueSp.edit().putFloat("top_limit", temp).apply();
             mBoardTopLimit = exInfoValueSp.getInt("top_limit", 50);
@@ -399,6 +403,8 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp
 
         @Override
         public void triggerBoardTempListener(boolean isListener) {
+            isBoardTemperatureListen = isListener;
+            ICLogger.d("triggerBoardTempListener==> " + isListener);
             //开关
             if (isListener) {
                 //设置alarm
@@ -429,10 +435,17 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp
             //取消接口注册
             mExInfoCallback = null;
         }
+
+        @Override
+        public boolean isListening() {
+            return isBoardTemperatureListen;
+        }
     };
 
     private void doBoardTempCheck(boolean fitter) {
+        ICLogger.d("fitter==> " + fitter + " mBoardTopLimit=> " + mBoardTopLimit);
         double boardTemperature = TemperatureUtil.getBoardTemperature();
+        ICLogger.d("boardTemperature ===> " + boardTemperature);
         if (mExInfoCallback != null) {
             try {
                 if (!fitter) {