fixed bugs on anan protocol
authorTrillGates <williamtrillgates@gmail.com>
Tue, 11 May 2021 03:59:56 +0000 (11:59 +0800)
committerTrillGates <williamtrillgates@gmail.com>
Tue, 11 May 2021 03:59:56 +0000 (11:59 +0800)
app/src/main/java/com/enqualcomm/support/service/Deliver.java
app/src/main/java/com/ic/protocols/protocol_anan.java

index ab97550..068d2d7 100644 (file)
@@ -162,21 +162,22 @@ public class Deliver extends AbstractConnectionService {
     private static int CheckCount = 0;
 
     private static boolean checkNeedServerResponse(StringMessage cmd) {
-        boolean NeedCheckServerResponse;
-        if (cmd != null &&
-                Config.protocol_no == Config.PROTOCOL_FZD &&
-                (protocolAPIHelper.isCmdStr(cmd).equals("UD")
-                        || protocolAPIHelper.isCmdStr(cmd).equals("UD2"))
-        ) {
-            NeedCheckServerResponse = false;
-        } else if (cmd != null &&
-                Config.protocol_no == Config.PROTOCOL_FZD &&
-                (protocolAPIHelper.isCmdStr(cmd).equals("AP10"))) {
-            NeedCheckServerResponse = false;
-        } else {
-            NeedCheckServerResponse = true;
-        }
-        return NeedCheckServerResponse;
+        return false;
+//        boolean NeedCheckServerResponse;
+//        if (cmd != null &&
+//                Config.protocol_no == Config.PROTOCOL_FZD &&
+//                (protocolAPIHelper.isCmdStr(cmd).equals("UD")
+//                        || protocolAPIHelper.isCmdStr(cmd).equals("UD2"))
+//        ) {
+//            NeedCheckServerResponse = false;
+//        } else if (cmd != null &&
+//                Config.protocol_no == Config.PROTOCOL_FZD &&
+//                (protocolAPIHelper.isCmdStr(cmd).equals("AP10"))) {
+//            NeedCheckServerResponse = false;
+//        } else {
+//            NeedCheckServerResponse = true;
+//        }
+//        return NeedCheckServerResponse;
     }
 
     public static void dumpMessage(StringMessage msg) {
@@ -338,7 +339,6 @@ public class Deliver extends AbstractConnectionService {
                 triggerSendThread();
             } else {
                 mRuntime.getDbHelper().updateCMDRecordForUD2(0, Msg); //把UD改为UD2 保存到数据库
-
             }
         } else {
             if (checkNetwork()) {
index a897aeb..06eb352 100644 (file)
@@ -33,6 +33,7 @@ import com.enqualcomm.support.service.HeartRateManager;
 import com.enqualcomm.support.utils.Connection;
 import com.enqualcomm.support.utils.ICLogger;
 import com.enqualcomm.support.utils.ProfileManager;
+import com.enqualcomm.support.utils.TemperatureUtil;
 import com.enqualcomm.support.utils.TimeUtil;
 import com.enqualcomm.support.utils.Util;
 
@@ -526,9 +527,9 @@ public class protocol_anan {
                         .append(CMDSPLIT)
                         .append(runtime.getHRS().getBPL()/*舒张压*/)
                         .append(CMDSPLIT)
-                        .append(0.0/*腕部温度*/)
+                        .append(runtime.tempInfo.currentWristTemp/*腕部温度*/)
                         .append(CMDSPLIT)
-                        .append(0.0/*温度*/)
+                        .append(runtime.tempInfo.currentBodyTemp/*温度*/)
                         .append(CMDSPLIT)
                         .append(0/*采集编号*/)
                         .append(CMDEND).toString());
@@ -666,14 +667,24 @@ public class protocol_anan {
             case BPXL:
                 handleBPXL(cmd, mConnection);
                 ICLogger.i("收到服务器心率检测命令");
-                if (mRuntime.check_stat_do_ppg_test())
+                //这个接口需要上传体温的,先测量体温吧,要不没有体温数据了
+                if (mRuntime.check_stat_do_temp_test()) {
+                    TemperatureUtil.getInstance().doTempTestInThread(FROM_SERVER);
+                }
+                if (mRuntime.check_stat_do_ppg_test()) {
                     HeartRateManager.getInstance().triggerPPGTest(FROM_SERVER);
+                }
                 break;
             case BPXY:
                 handleBPXY(cmd, mConnection);
                 ICLogger.i("收到服务器血压检测命令");
-                if (mRuntime.check_stat_do_ppg_test())
+                //这个接口需要上传体温的,先测量体温吧,要不没有体温数据了
+                if (mRuntime.check_stat_do_temp_test()) {
+                    TemperatureUtil.getInstance().doTempTestInThread(FROM_SERVER);
+                }
+                if (mRuntime.check_stat_do_ppg_test()) {
                     HeartRateManager.getInstance().triggerPPGTest(FROM_SERVER);
+                }
                 break;
             case BP88:
                 ICLogger.d("收到查找设备的指令...");
@@ -902,6 +913,7 @@ public class protocol_anan {
     private void handleBP26(String cmd, Connection mConnection) {
         String[] split = cmd.split(CMD_SPLIT);
         //IWBP26,353456789012345,080835,1,2,123|0900@1145,456|1300@1600
+        ICLogger.d("cmd == > " + cmd);
         try {
             //1为开,0 为关
             //修改情景模式
@@ -915,10 +927,13 @@ public class protocol_anan {
             } else {
                 ProfileManager.ringAndVibrate(audioManager);
             }
+            String cmdCode = split[2];
+            int index = cmd.indexOf(cmdCode);
             //回复服务器
-//            mConnection.send(
-//                    genStringMessage(cmdMap.get(CMD_TYPE.AP26),)
-//            );
+            mConnection.send(
+                    genStringMessage(cmdMap.get(CMD_TYPE.AP26),
+                            new StringBuilder(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP26)).append(CMDSPLIT).append(cmd.substring(index)).append(CMDEND).toString())
+            );
         } catch (Exception e) {
             e.printStackTrace();
         }