1.解决ANAN协议默认请求bug
authork.liang <liangkang648253071@126.com>
Fri, 30 Jul 2021 03:44:58 +0000 (11:44 +0800)
committerk.liang <liangkang648253071@126.com>
Fri, 30 Jul 2021 03:44:58 +0000 (11:44 +0800)
2.ANAN增加聚合定位APDW/BPDW,将原来的AP01和AP02改成APDW
3.优化防丢同步音视频联系人时的数据长度bug

app/release/output.json
app/src/main/java/com/enqualcomm/support/Config.java
app/src/main/java/com/enqualcomm/support/bean/Runtime.java
app/src/main/java/com/enqualcomm/support/utils/DnsUtil.java
app/src/main/java/com/ic/protocols/protocolAPIHelper.java
app/src/main/java/com/ic/protocols/protocol_anan.java
app/src/main/java/com/ic/protocols/protocol_fzd.java
app/version_code.properties

index bc07dc5..962c930 100644 (file)
@@ -1 +1 @@
-[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":901,"versionName":"2107271436","enabled":true,"outputFile":"ICSer_V901_2107271436_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V901_2107271436_release.apk","properties":{}}]
\ No newline at end of file
+[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":902,"versionName":"2107281422","enabled":true,"outputFile":"ICSer_V902_2107281422_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V902_2107281422_release.apk","properties":{}}]
\ No newline at end of file
index 9f0b00b..c234623 100644 (file)
@@ -611,6 +611,10 @@ public class Config {
                 case PROTOCOL_MQTT:
                     ICLogger.i("协议 MQTT");
                     break;
+                case PROTOCOL_ANAN:
+                    ICLogger.i("协议 ANAN");
+                    ret = PROTOCOL_ANAN;
+                    break;
                 case PROTOCOL_S123:
                     ICLogger.i("协议 S123 Vitrack");
                     break;
index 26b9e40..4c1a178 100644 (file)
@@ -975,6 +975,7 @@ public class Runtime {
     public void setHostAndPort(String paramString, int paramInt) {
         this.host = paramString;
         this.port = paramInt;
+        ICLogger.i("setHostAndPort host:" + host + ",port:" + port);
     }
 
     public void setPort(int _port) {
index 2716386..5e213ab 100644 (file)
@@ -186,7 +186,7 @@ public class DnsUtil  {
         runTask(temp, call);\r
         String ip;\r
         Util.mSleep(500);\r
-//        ICLogger.i(temp.toString());\r
+        ICLogger.i(temp.toString());\r
         if (temp.domainIp!=null){\r
             if (temp.hostIp!=null){\r
                 ip=temp.hostIp.toString();\r
index b2890ab..ce24746 100644 (file)
@@ -521,7 +521,7 @@ public class protocolAPIHelper {
                 ret = protocol_mqtt.UD(runtime);
                 break;
             case PROTOCOL_ANAN:
-                ret = protocol_anan.AP01(runtime);
+                ret = protocol_anan.APDW(runtime);
                 break;
             case Config.PROTOCOL_S123:
                 ret = protocol_s123.AP01(runtime);
@@ -553,7 +553,7 @@ public class protocolAPIHelper {
                 ret = protocol_mqtt.UD(runtime);
                 break;
             case PROTOCOL_ANAN:
-                ret = protocol_anan.AP02(runtime);
+                ret = protocol_anan.APDW(runtime);
                 break;
             case Config.PROTOCOL_S123:
                 ret = protocol_s123.AP02(runtime);
index db0fbe5..9b54cdb 100644 (file)
@@ -64,6 +64,7 @@ import static java.lang.Math.abs;
  * 安安康养的协议
  * 测试服务器域名:pay.yfanan.com:40009
  * 测试服务器IP地址:121.43.158.167:40009
+ * 此协议需要ICCID,必须插sim卡才能用
  */
 @SuppressLint("MissingPermission")
 public class protocol_anan {
@@ -117,7 +118,6 @@ public class protocol_anan {
             String[] list = wifiinfo.split("&");
             apsum = list.length;
         }
-
         String wifiInfo = ds.getWifiInfo();
         ICLogger.i("Wifi ap sum " + apsum);
         return genStringMessage(cmdMap.get(CMD_TYPE.AP02),
@@ -129,6 +129,36 @@ public class protocol_anan {
                         .append(CMDEND).toString());  //wifi信息数据
     }
 
+    /**
+     * 聚合定位
+     */
+    public static StringMessage APDW(Runtime ds){
+        int apsum = 0;
+        String wifiinfo = ds.getWifiInfo();
+        if (!wifiinfo.isEmpty()) {
+            String[] list = wifiinfo.split("&");
+            apsum = list.length;
+        }
+        String wifiInfo = ds.getWifiInfo();
+        ICLogger.i("Wifi ap sum " + apsum);
+        return genStringMessage(cmdMap.get(CMD_TYPE.APDW),
+                new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APDW))
+                        .append(TimeUtil.getShortDate())
+                        .append(ds.getGPSData())
+                        .append(TimeUtil.getShortTime())
+                        .append(ds.getGPSHeading())
+                        .append(String.format("%03d", abs(ds.getSignalStrength())))
+                        .append(ds.getGPSLocationStarNums())
+                        .append(ds.getBattery()).append("0")
+                        .append(ds.getProtection())
+                        .append(ds.getWorkModeStr()).append(CMDSPLIT)
+                        .append(ds.getLanguage()).append(CMDSPLIT)
+                        .append(0).append(CMDSPLIT) //为0时不回复地址
+                        .append(ds.getLBSMultiStationData()).append(CMDSPLIT)  //基站信息数据
+                        .append(apsum).append(CMDSPLIT).append(wifiInfo)
+                        .append(CMDEND).toString());  //wifi信息数据
+    }
+
     private void registerWearStateReceiver() {
         IntentFilter intentFilter = new IntentFilter();
         intentFilter.addAction("com.ic.ACTION_ANTIOFF");
@@ -265,7 +295,9 @@ public class protocol_anan {
         BP02,
         BP01/*GPS的*/,
         BP00/*登录包*/,
-        BP03/*心跳*/
+        BP03/*心跳*/,
+        APDW/*聚合定位上行*/,
+        BPDW/*聚合定位下行*/
     }
 
     private final static HashMap<CMD_TYPE, String> cmdMap;
@@ -283,6 +315,7 @@ public class protocol_anan {
         cmdMap.put(CMD_TYPE.APTQ, "APTQ");
         cmdMap.put(CMD_TYPE.APWA, "APWA");
         cmdMap.put(CMD_TYPE.APFD, "APFD");
+        cmdMap.put(CMD_TYPE.APDW, "APDW");
         /* 服务器发起*/
         cmdMap.put(CMD_TYPE.BP12, "BP12");
         cmdMap.put(CMD_TYPE.AP45, "AP45");
@@ -333,6 +366,7 @@ public class protocol_anan {
         cmdMap.put(CMD_TYPE.BP00, "BP00");
         cmdMap.put(CMD_TYPE.AP26, "AP26");
         cmdMap.put(CMD_TYPE.BP03, "BP03");
+        cmdMap.put(CMD_TYPE.BPDW, "BPDW");
     }
 
 
@@ -391,7 +425,7 @@ public class protocol_anan {
                         cmdMap.get(CMD_TYPE.AP00)
                 ).append(runTime.IMEI())
                         .append(CMDSPLIT)
-                        .append(runTime.getIccid())
+                        .append(runTime.getIccid().toUpperCase())
                         .append(CMDSPLIT)
                         .append(runTime.getImsi())
                         .append(CMDEND).toString());
@@ -545,10 +579,14 @@ public class protocol_anan {
 
     /*LBS+GPS混合定位*/
     public static StringMessage AP01(Runtime ds) {
+
         //示例数据:IWAP01080524A2232.9806N11404.9355E000.1061830323.8706000908000102,
         // 460,0,9520,3671,
         // Home|74-DE-2B-44-88-8C|97& Home1|74-DE-2B-44-88-8C|97&Home2|74-DE-2B-44-88-8C|97& Home3|74-DE-2B-44-88-8C|97#
 //        IWAP01191230A2232.9807N11404.9355E000.1161320000.0006000910000000,460,00,9520,3671,#
+
+        //示例数据:IWAPDW080524A2232.9806N11404.9355E000.1061830323.8706000908000102,zh_cn,0,7,460,0,9520|3671|13,9520|3672|12,9520|3673|11,9520|3674|10,9520|3675|9,9520|3676|8,9520|3677|7,4,1|D8-24-BD-79-FA-1F|59&2|3C-46-D8-6D-CE-01|81&3|0C-4C-39-1A-7C-65|69&4|70-A8-E3-5D-D7-C0|65#
+
         String wifiInfo = ds.getWifiInfo();
         return genStringMessage(cmdMap.get(CMD_TYPE.AP01),
                 new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP01))
@@ -849,6 +887,10 @@ public class protocol_anan {
                 ICLogger.i("服务器收到心跳包AP03");
                 mConnection.DeliverCMDMessageToSystem("heartbeat", cmd);//通知下面线程状态变化
                 break;
+            case BPDW: //聚合定位
+                ICLogger.i("服务器收到定位APDW");
+                mConnection.DeliverCMDMessageToSystem("APDW", cmd);//通知下面线程状态变化
+                break;
         }
     }
 
index c189128..b6e6ac8 100644 (file)
@@ -2877,6 +2877,7 @@ public class protocol_fzd {
             String[] split = str.split(CMD_SPLIT);
             if(split != null && split.length % 3 != 0){
                 str = str + "0";
+                ICLogger.d("str result == > " + str);
                 split = str.split(CMD_SPLIT);
             }
             //每3个为一组
index 4f89419..17b3f0a 100644 (file)
@@ -1,2 +1,2 @@
-#Tue Jul 27 14:36:38 CST 2021\r
-VERSION_CODE=901\r
+#Wed Jul 28 14:22:18 CST 2021\r
+VERSION_CODE=902\r