release ICProtocol8.1_V920_2108270026_release.apk
authorSnickerSun <scy@incartech.cn>
Thu, 26 Aug 2021 16:32:53 +0000 (00:32 +0800)
committerSnickerSun <scy@incartech.cn>
Thu, 26 Aug 2021 16:32:53 +0000 (00:32 +0800)
添加 Mode 10 CUSTOM_MOD9_WIFI_FIRST, 优先WiFi定位,WiFi无定位再开始GPS定位。
添加  IP指令解析及配置
修复 hrtstart 指令没有做周期测试问题
配置默认 18cube 都是默认 Mode10 定位, 15分钟定位周期,心率,体温都禁止测试。
修复 一旦设置心率就无法禁用问题。且修改其有效数据为5分钟以上。

app/release/ICProtocol8.1_V920_2108270026_release.apk [moved from app/release/ICProtocol8.1_V916_2108201434_release.apk with 76% similarity]
app/release/output.json
app/src/main/AndroidManifest.xml
app/src/main/java/com/ic/protocolSrv/Config.java
app/src/main/java/com/ic/protocolSrv/CoreService.java
app/src/main/java/com/ic/protocolSrv/ICSmsManager.java
app/src/main/java/com/ic/protocolSrv/LocationClient.java
app/src/main/java/com/ic/protocolSrv/NMEAListener.java
app/src/main/java/com/ic/protocols/protocol_fzd.java
app/version_code.properties
local.properties

similarity index 76%
rename from app/release/ICProtocol8.1_V916_2108201434_release.apk
rename to app/release/ICProtocol8.1_V920_2108270026_release.apk
index 9218199..822b507 100644 (file)
Binary files a/app/release/ICProtocol8.1_V916_2108201434_release.apk and b/app/release/ICProtocol8.1_V920_2108270026_release.apk differ
index 015168e..6f71690 100644 (file)
@@ -1 +1 @@
-[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":918,"versionName":"2108251623","enabled":true,"outputFile":"ICProtocol8.1_V918_2108251623_release.apk","fullName":"release","baseName":"release"},"path":"ICProtocol8.1_V918_2108251623_release.apk","properties":{}}]
\ No newline at end of file
+[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":920,"versionName":"2108270026","enabled":true,"outputFile":"ICProtocol8.1_V920_2108270026_release.apk","fullName":"release","baseName":"release"},"path":"ICProtocol8.1_V920_2108270026_release.apk","properties":{}}]
\ No newline at end of file
index 8e6d619..2f0e164 100644 (file)
     <protected-broadcast android:name="com.ic.protocolSrv.ACTION_EQC_ALARM" />
     <protected-broadcast android:name="com.ic.heartrate.action.SILENT_START" />
     <protected-broadcast android:name="com.ic.protocolSrv.ACTION_ISCONNECTED" />
-    <protected-broadcast android:name="com.ic.deskclock.YUN_ALARM_CHANGE" />
+    <protected-broadcast android:name="com.ic.protocol.ACTION_IS_SERVER_CONNECTED" />
     <protected-broadcast android:name="com.ic.protocolSrv.sos" />
 
     <application
index a9796da..150d4f0 100644 (file)
@@ -26,6 +26,7 @@ import java.io.StringReader;
 import java.util.HashMap;
 
 import static com.ic.protocolSrv.bean.ICLocation.CUSTOM_MOD8_GPS;
+import static com.ic.protocolSrv.bean.ICLocation.CUSTOM_MOD9_WIFI_FIRST;
 import static com.ic.protocolSrv.bean.ICLocation.NORMAL_MOD;
 import static com.ic.protocolSrv.bean.Runtime.AlarmType.ALARM_LOWBATTERY;
 import static com.ic.protocolSrv.utils.Util.getSystemProperties;
@@ -583,6 +584,7 @@ public class Config {
     public static final int PROTOCOL_ANAN = 5;
     public static final int PROTOCOL_S123 = 6;
     public static final int PROTOCOL_GATOR = 7;
+    public static final int PROTOCOL_W100 = 8;
     public static final int PROTOCOL_UNKNOWN = 255;
 
     public static int protocol_no = getProtocolNumber();
@@ -1052,7 +1054,17 @@ public class Config {
             DefaultLocationCycle = 15 * 60;
             DefaultPPGTestCycleInMinutes = 15;
             DefaultTemperatureTestCycle = 15 * 60;
-
+        } else if (Config.custom_name.equals("18cube") ) {
+            //C46-W100 config
+            Config.ConfigAlarm(Runtime.AlarmType.ALARM_SOS, true);
+            Config.ConfigAlarm(Runtime.AlarmType.ALARM_LOWBATTERY, true);
+            enableSleep = false;
+            DefaultLocationMode = CUSTOM_MOD9_WIFI_FIRST;
+            DefaultLocationCycle = 15 * 60;
+            DefaultPPGTestCycleInMinutes = 0;
+            DefaultTemperatureTestCycle = 0;
+            noBroadCastPushTxtNotify = true;
+            forceGPSMoveCheck = true; //即爱对gps不进行运动检测,此变量专门为了给其他协议进行强制运动检测用的。
         } else {
             DefaultLocationMode = NORMAL_MOD;
             DefaultLocationCycle = 900;
index 639736d..167e952 100644 (file)
@@ -134,8 +134,6 @@ public class CoreService extends Service {
     private static CoreService mProtocolServer = null;
     private static LBSHelper lbshelper = null;
 
-    public static final String ACTION_ALARM = "com.ic.protocolSrv.ACTION_ALARM";
-
     private static final int GRAY_SERVICE_ID = android.os.Process.myPid();
 
     public static String CHANNEL_ID_STRING = CoreService.class.getPackage().getName();
@@ -1570,13 +1568,13 @@ public class CoreService extends Service {
         ICLogger.d("heartRateDetectAlarmCycleMinutes  == >  " + heartRateDetectAlarmCycleMinutes);
         ICLogger.d("ppgtestCycle == > " + heartRateDetectAlarmCycleMinutes);
         //如果周期不为0,那么就设置到配置信息里头去。
-        if (heartRateDetectAlarmCycleMinutes > 1) {
-            Config.setPPGTestCycleInMinutes(runtime.getContextProxy().context, heartRateDetectAlarmCycleMinutes);
-            runtime.setPpgTestCycleInMinutes(Config.getPPGTestCycleInMinutes(runtime.getContextProxy().context));
-            ICLogger.i("get and set PPGTestCycle " + heartRateDetectAlarmCycleMinutes);
-        }
+//        if (heartRateDetectAlarmCycleMinutes > 1) {
+        Config.setPPGTestCycleInMinutes(runtime.getContextProxy().context, heartRateDetectAlarmCycleMinutes);
+        runtime.setPpgTestCycleInMinutes(Config.getPPGTestCycleInMinutes(runtime.getContextProxy().context));
+        ICLogger.i("get and set PPGTestCycle " + heartRateDetectAlarmCycleMinutes);
+//        }
         StringBuilder sb = new StringBuilder();
-        if (heartRateDetectAlarmCycleMinutes > 1) {
+        if (heartRateDetectAlarmCycleMinutes > 5) {
             AlarmHelper.setRealTimeAlarm(runtime.getContextProxy().context, heartRateDetectAlarmCycleMinutes, ACTION_HEATR_RATE_START);
         }
 
index a0c9c8f..9c33750 100644 (file)
@@ -63,6 +63,7 @@ import static com.ic.protocolSrv.Constants.ACTION_START_FOTA_UPDATE;
 import static com.ic.protocolSrv.Constants.ACTION_TINTERNAL_TEST;
 import static com.ic.protocolSrv.Constants.FROM_SERVER;
 import static com.ic.protocolSrv.Constants.KeyReplyData;
+import static com.ic.protocolSrv.bean.ICLocation.CUSTOM_MOD9_WIFI_FIRST;
 import static com.ic.protocolSrv.utils.SimSignalUtil.send_at_cmd;
 import static com.ic.protocolSrv.utils.SimSignalUtil.send_at_setImei0;
 
@@ -560,6 +561,7 @@ public class ICSmsManager extends BroadcastReceiver {
                                 case ICLocation.CUSTOM_MOD:
                                 case ICLocation.CUSTOM_MOD8_GPS:
                                 case ICLocation.CUSTOM_MOD8_WIFI:
+                                case CUSTOM_MOD9_WIFI_FIRST:
                                     break;
                                 default:
                                     sendSMS(phoneNumber, "set to Location Failed ,value range should be Mod in (1,2,3,4,5,8,9) and cycle >=30!");
@@ -1060,6 +1062,9 @@ public class ICSmsManager extends BroadcastReceiver {
                         case 2:
                         case 3:
                         case 4:
+                        case 5:
+                        case 6:
+                        case 7:
                             Util.setSystemProperties("persist.sys.protocol_no", strtmp);
                             Config.getProtocolNumber();
                             Config.loadServerSettings(runtime);
@@ -1068,7 +1073,7 @@ public class ICSmsManager extends BroadcastReceiver {
                             CoreService.getInstance().ReConnectToServer();
                             break;
                         default:
-                            sendSMS(phoneNumber, "setprotocol only support  Protocol 0/1/2/3/4 by now! ");
+                            sendSMS(phoneNumber, "setprotocol only support  Protocol 0/1/2/3/4/5/6/7 by now! ");
                             break;
                     }
 
index c0a251b..2dd784d 100644 (file)
@@ -384,6 +384,7 @@ public class LocationClient {
 
     private static int checktimes = 0;
     private static boolean timeout = false;
+    private static boolean wifi_timeout = false;
     private static boolean isLocating = false;
     private static boolean isWifiScanning = false;
     LBSHelper.OnWiFiInfoListener wifiinfoListener = new LBSHelper.OnWiFiInfoListener() {
@@ -589,11 +590,12 @@ public class LocationClient {
             gps_ok = true;
         if (runtime.getLocationInstance().getLocationStat() == ICLocation.LOCATION_STAT.LOCATION_GPS_TIEMOUT)
             gps_nosignal = true;
-        lbs_ok = (runtime.getLocationInstance().isDataChanged() == false
-                || (runtime.getLocationInstance().getMNC().equals("0")
-                && runtime.getLocationInstance().getMCC().equals("0")
-                && runtime.getLocationInstance().getGSMStationCID() == 0
-                && runtime.getLocationInstance().getLAC() == 0)) ? false : true;
+        lbs_ok = (
+                runtime.getLocationInstance().isDataChanged() == false  /*如果mcc,mnc等都没有变过 */||
+                ( runtime.getLocationInstance().getMNC().equals("0")   && runtime.getLocationInstance().getMCC().equals("0")
+                  && runtime.getLocationInstance().getGSMStationCID() == 0  && runtime.getLocationInstance().getLAC() == 0
+                )
+        )? false : true;
 
         //        ICLogger.i("getMNC "+runtime.getLocationInstance().getMNC()+" getMCC "+runtime.getLocationInstance().getMCC()+" getGSMStationCID " + runtime.getLocationInstance().getGSMStationCID()+ " getLAC "+runtime.getLocationInstance().getLAC()+" changed "+runtime.getLocationInstance().isDataChanged());
         ICLogger.i("waitAndSendLocation " + checktimes + ", lbs=" + lbs_ok + ", wifi=" + wifi_ok + ", gps=" + gps_ok + ", mode=" + mode);
@@ -605,7 +607,7 @@ public class LocationClient {
             case ICLocation.CUSTOM_MOD:
             case ICLocation.CUSTOM_MOD8_GPS:
             case ICLocation.EMERGNECY_MOD:
-            case ICLocation.REALTIME_MOD:
+            case ICLocation.REALTIME_MOD: {
                 //GPS 优先的话多给些时间(10秒)
                 if (checktimes > GPSLocationTimeoutInSeconds) {
                     ICLogger.i("waitAndSendLocation " + checktimes + " timeout");
@@ -621,7 +623,6 @@ public class LocationClient {
                     ICLogger.i("waitAndSendLocation " + timeCost + "> 50000ms timeout");
                     //timeout=true;
                 }
-
                 // lbs only +timeout, lbs+wifi+gpsNosignal, libs+ , lbs+gps+wifi, Timeout can override wifi and gps
                 if ((lbs_ok && timeout)
                         || (gps_ok)
@@ -675,12 +676,115 @@ public class LocationClient {
                     if (Config.LOG_TOFILE)
                         ICLogger.logToFile("GPS", "timeout no location ");
                 }
+            }
                 break;
+            case ICLocation.CUSTOM_MOD9_WIFI_FIRST: {
+                //检测wifi和lbs先,成功则直接返回,失败则开启GPS
+                if (checktimes > WiFiLocationTimeoutInSeconds) {
+                    ICLogger.i("waitAndSendLocation " + checktimes + " WIFI Timeout start GPS location");
+                    wifi_timeout = true;
+                    startGpsLocate();
+                }
+                if (checktimes > GPSLocationTimeoutInSeconds) {
+                    ICLogger.i("waitAndSendLocation " + checktimes + " GPS timeout");
+                    timeout = true;
+                }
+                if (NoMoveTimeout && (timeout || gps_nosignal)) {
+                    //没有移动,GPS超时或者没信号都会给 计数 加 1
+                    gpsTimeoutCountOnNoMove++;
+                }
+                timeCost = System.currentTimeMillis() - startCheckTime;
+                if ((startCheckTime != 0L) && (timeCost > 50 * 1000L)) {
+                    //有时timer计数不准,则根据实际时间计算
+                    ICLogger.i("waitAndSendLocation " + timeCost + "> 50000ms timeout");
+                    //timeout=true;
+                }
+                // lbs only +timeout, lbs+wifi+gpsNosignal, libs+ , lbs+gps+wifi, Timeout can override wifi and gps
+                String locationtype = "LBS";
+                if (wifi_ok) {
+                    locationtype = "WiFi";
+                    runtime.getLocationInstance().setLocationType(locationtype);
+                    runtime.getLocationInstance().setLocationTime(TimeUtil.getSystemTime3());
+                    if (startSOSLocation) {
+                        StringMessage AP10_CMD = protocolAPIHelper.getWarningMSG(runtime);
+                        DeliverMessage(AP10_CMD);
+                        runtime.setAlarmType(Runtime.AlarmType.ALARM_REMOVE_SOS);
+                        startSOSLocation = false;
+                    }
+                    if (startNomalLocation = true) {
+                        startNomalLocation = false;
+                        StringMessage AP02_CMD = protocolAPIHelper.getLBSLocationMSG(runtime);
+                        DeliverMessage(AP02_CMD);
+                    }
+                    stopCheckLocationResult();
+                    String msg = "Location Fixed Type " + runtime.getLocationInstance().getLocationType() + " at " + runtime.getLocationInstance().getLocationTime() + " timeout " + timeout;
+                    ICLogger.i(msg);
 
+                    if (responseUrl != null) {
+                        responseUrl.replyCallBack("Location Fixed Type " + locationtype);
+                    }
+                    if (Config.LOG_TOFILE)
+                        ICLogger.logToFile("GPS", msg);
+
+                } else if (wifi_timeout) {
+
+                    if ((lbs_ok && timeout)
+                            || (gps_ok)
+                            || (lbs_ok && (gps_ok || startSOSLocation))
+                            || (lbs_ok && (gps_ok || startSOSLocation) && wifi_ok)
+                            || (lbs_ok && gps_nosignal && wifi_ok)
+                    ) {
+
+                        if (gps_ok) {
+                            locationtype = "GPS";
+                        }
+                        runtime.getLocationInstance().setLocationType(locationtype);
+                        runtime.getLocationInstance().setLocationTime(TimeUtil.getSystemTime3());
+                        if (startSOSLocation) {
+                            StringMessage AP10_CMD = protocolAPIHelper.getWarningMSG(runtime);
+                            DeliverMessage(AP10_CMD);
+                            runtime.setAlarmType(Runtime.AlarmType.ALARM_REMOVE_SOS);
+                            startSOSLocation = false;
+                        }
+                        if (startNomalLocation = true) {
+                            startNomalLocation = false;
+                            if (gps_ok) {
+                                if (!TextUtils.isEmpty(runtime.getWifiInfo())) {
+                                    StringMessage AP01_CMD = protocolAPIHelper.getGPSLocationMSG(runtime);
+                                    DeliverMessage(AP01_CMD);
+                                }
+                            } else {
+                                StringMessage AP02_CMD = protocolAPIHelper.getLBSLocationMSG(runtime);
+                                DeliverMessage(AP02_CMD);
+                            }
+                        }
+                        stopCheckLocationResult();
+                        String msg = "Location Fixed Type " + runtime.getLocationInstance().getLocationType() + " at " + runtime.getLocationInstance().getLocationTime() + " timeout " + timeout;
+                        ICLogger.i(msg);
+                        if (responseUrl != null) {
+                            if (locationtype.equals("GPS")) {
+                                responseUrl.replyCallBack(runtime.getLocationInstance().getLocation().latGPSStr + "," + runtime.getLocationInstance().getLocation().lonGPSStr);
+                            } else {
+                                responseUrl.replyCallBack("Location Fixed Type " + locationtype);
+                            }
+                        }
+                        if (Config.LOG_TOFILE) {
+                            ICLogger.logToFile("GPS", msg);
+                        }
+                    } else if (timeout) {
+                        //timeout + noLBS +noGPS
+                        ICLogger.i("timeout no location  ");
+                        stopCheckLocationResult();
+                        if (Config.LOG_TOFILE)
+                            ICLogger.logToFile("GPS", "timeout no location ");
+                    }
+                }
+            }
+                break;
             case ICLocation.NORMAL_MOD:
             case ICLocation.LOWPOWER_MOD:
             case ICLocation.CUSTOM_MOD8_WIFI:
-            default:
+            default: {
                 //wifi优先的话给20秒时间
                 if (checktimes > WiFiLocationTimeoutInSeconds) {
                     ICLogger.i("waitAndSendLocation " + checktimes + " timeout");
@@ -729,6 +833,7 @@ public class LocationClient {
                     if (Config.LOG_TOFILE)
                         ICLogger.logToFile("GPS", "timeout no location ");
                 }
+            }
                 break;
         }
         ICLogger.i("needCheckAgain " + needCheckAgain);
@@ -1025,6 +1130,20 @@ public class LocationClient {
                     clearGPSlocateStat(); //确保gps关闭,防止切换回来gps状态错误,尤其是不NoStop模式下的gps切换回来有此风险。
                 }
                 break;
+            case ICLocation.CUSTOM_MOD9_WIFI_FIRST:
+                //此处要暂时跳过GPS定位,待WiFi未定位再开始GPS定位!
+                if (!NoMoveAndNoGPSsignalSkipGpsFlag) {
+                    if (runtime.getLocationInstance().getLocation_cycle() <= 60) {
+                        nmeaListener.setNoStop(true);
+                    } else {
+                        nmeaListener.setNoStop(false);
+                    }
+                    //所有定位逻辑都和CUSTOM_MOD8_GPS 一致,除了开始GPS定位。后期开始就不用clean GPS状态了
+//                    startGpsLocate();
+                } else {
+                    clearGPSlocateStat(); //如果wifi优先,则确保gps关闭,防止切换回来gps状态错误,尤其是不NoStop模式下的gps切换回来有此风险。
+                }
+                break;
             case ICLocation.LOWPOWER_MOD:
             case ICLocation.NORMAL_MOD:
             case ICLocation.CUSTOM_MOD8_WIFI:
index 8149fc0..7d1a35f 100644 (file)
@@ -87,9 +87,11 @@ public class NMEAListener implements NmeaListener, LocationListener {
                 case ICLocation.CUSTOM_MOD8_GPS:
                 case ICLocation.EMERGNECY_MOD:
                 case ICLocation.REALTIME_MOD:
-                case ICLocation.CUSTOM_MOD9_WIFI_FIRST:
                     //GPS 定位模式不关闭GPS,防止 1分钟定位超时后,重新关闭开启GPS。
                     //不给GPS继续定位的机会,造成第一次定位困难!
+                    break;
+                case ICLocation.CUSTOM_MOD9_WIFI_FIRST:
+
                     break;
                 case ICLocation.LOWPOWER_MOD:
                 case ICLocation.NORMAL_MOD:
index 2fc4d6b..1519a9f 100644 (file)
@@ -439,6 +439,7 @@ public class protocol_fzd {
         MESSAGE/*文字消息*/,
         profile,//情景模式
         SOSON,//w100SOS 报警开关
+        IP,//配置服务器地址
     }
 
     public static HashMap<CMD_TYPE, String> cmdMap = null;
@@ -516,6 +517,7 @@ public class protocol_fzd {
         cmdMap.put(CMD_TYPE.CALLING, "CALLING");
         cmdMap.put(CMD_TYPE.RESET, "RESET");
         cmdMap.put(CMD_TYPE.SOSON, "SOSON");
+        cmdMap.put(CMD_TYPE.IP, "IP");
     }
 
     private Connection mConnection = null;
@@ -1357,11 +1359,74 @@ public class protocol_fzd {
         return genFZDCMD(cmdMap.get(CMD_TYPE.hrtstart));
     }
 
-    public void handleHrtstart(Connection connection) {
-
+    public void handleHrtstart(Connection connection, Runtime runtime, String cmd, String data) {
+        //[IC*334588000000156*len*hrtstart,x]
+            //  x 为上传间隔时间,单位秒,连续上传时最小时间不小于 300 秒,最大不超过 65535.
+        //  实例:[IC*334588000000156*len*hrtstart,300]
+        //终端会每隔 300 秒检测一次心率
+        //
+        //x 为 1 则代表终端心率单次上传,上传完后自动关闭。x 为 0 则代表终端心率上传关闭。
+
+        int testcycle=0;
+        try{
+            testcycle=Integer.parseInt(data);
+        }catch (Exception e){
+            ICLogger.e(e.getMessage());
+            testcycle=0;
+            ICLogger.i("Hrtstart format error!");
+            return;
+        }
         connection.send(hrtstart());
+
+        if(testcycle>=0 && testcycle<65535) {
+            ICLogger.i("收到服务器指令:设置心率周期 " + testcycle + "秒 相当于 "+testcycle/60 +"分钟" );
+            try {
+                //发送重置PPGCycle的广播,会在CoreServer里面执行
+                CoreService.getInstance().setHeartRateDetectAlarm(testcycle/60);
+            } catch (Exception e) {
+                ICLogger.e(e.getMessage(), e);
+            }
+        }else{
+            ICLogger.i("收到服务器指令:设置心率周期超限[0~65535] " + testcycle + "秒 相当于 "+testcycle/60 +"分钟" );
+        }
+
+    }
+
+    public static StringMessage IP() {
+        return genFZDCMD(cmdMap.get(CMD_TYPE.IP));
     }
 
+    public void handleIP(Connection connection, Runtime runtime, String cmd, String data) {
+        //平台发送:
+        //            [IC*YYYYYYYYYYYYYYY*LEN*IP,IP地址或者域名,端口号]
+        //    实例:[IC*334588000000156*0013*IP,192.168.0.1,8099]
+        //    或者 [IC*334588000000156*0014*IP,myserver.com,8099]
+        //    终端回复:
+        //            [IC*YYYYYYYYYYYYYYY*LEN*IP]
+        //    实例:[IC*334588000000156*0002*IP]
+        //    说明:设置服务器地址和端口
+
+        String[] cmdlist=data.split(CMD_SPLIT);
+        if(cmdlist.length==2) {
+            connection.send(IP());
+
+                try {
+                    String ip = cmdlist[0];
+                    int port = Integer.valueOf(cmdlist[1].replace("#", ""));
+                    Config.setCustomServer(runtime.getContextProxy().context, true, ip, port);
+                    Config.loadServerSettings(runtime);
+                    CoreService.getInstance().disconnect_server();
+                    CoreService.getInstance().ReConnectToServer();
+                }catch (Exception e){
+                    ICLogger.e(e.getMessage(),e);
+                }
+        }else{
+            ICLogger.i("IP format error!");
+        }
+
+    }
+
+
     public static StringMessage FIND() {
         return genFZDCMD(cmdMap.get(CMD_TYPE.FIND));
     }
@@ -1648,12 +1713,9 @@ public class protocol_fzd {
                 mConnection.DeliverCMDMessageToSystem("poweroff", cmd);
                 break;
             case hrtstart:
-                handleHrtstart(mConnection);
                 ICLogger.i("收到服务器心率检测命令");
                 Config.testType = HeartRateOxygenTestType.JUST_HEART_RATE;
-                if (mRuntime.check_stat_do_ppg_test()) {
-                    HeartRateManager.getInstance().triggerPPGTest(FROM_SERVER);
-                }
+                handleHrtstart(mConnection,mRuntime,cmd,data);
                 break;
             case bldstart:
                 handleBldstart(mConnection);
@@ -1846,6 +1908,11 @@ public class protocol_fzd {
                 ICLogger.d("收到服务器设置的SOS开发消息..");
                 handleSettings(type, data, mRuntime);
                 break;
+            case IP:
+                //设置服务器IP
+                ICLogger.d("设置服务器 IP 为 "+data);
+                handleIP(mConnection, mRuntime, cmd,data);
+                break;
         }
         return ret;
     }
index 033fa4b..ddf5f49 100644 (file)
@@ -1,2 +1,2 @@
-#Wed Aug 25 16:23:34 CST 2021\r
-VERSION_CODE=918\r
+#Fri Aug 27 00:26:43 CST 2021\r
+VERSION_CODE=920\r
index fbab3b2..049e4f5 100644 (file)
@@ -4,5 +4,5 @@
 # Location of the SDK. This is only used by Gradle.\r
 # For customization when using a Version Control System, please read the\r
 # header note.\r
-#Tue Aug 24 16:58:39 CST 2021\r
-sdk.dir=E\:\\Android\\Sdk\r
+#Wed Aug 25 18:55:18 CST 2021\r
+sdk.dir=C\:\\Users\\incar\\AppData\\Local\\Android\\Sdk\r