* 安安康养的协议
* 测试服务器域名:pay.yfanan.com:40009
* 测试服务器IP地址:121.43.158.167:40009
+ * 此协议需要ICCID,必须插sim卡才能用
*/
@SuppressLint("MissingPermission")
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),
.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");
BP02,
BP01/*GPS的*/,
BP00/*登录包*/,
- BP03/*心跳*/
+ BP03/*心跳*/,
+ APDW/*聚合定位上行*/,
+ BPDW/*聚合定位下行*/
}
private final static HashMap<CMD_TYPE, String> cmdMap;
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");
cmdMap.put(CMD_TYPE.BP00, "BP00");
cmdMap.put(CMD_TYPE.AP26, "AP26");
cmdMap.put(CMD_TYPE.BP03, "BP03");
+ cmdMap.put(CMD_TYPE.BPDW, "BPDW");
}
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());
/*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))
ICLogger.i("服务器收到心跳包AP03");
mConnection.DeliverCMDMessageToSystem("heartbeat", cmd);//通知下面线程状态变化
break;
+ case BPDW: //聚合定位
+ ICLogger.i("服务器收到定位APDW");
+ mConnection.DeliverCMDMessageToSystem("APDW", cmd);//通知下面线程状态变化
+ break;
}
}