From: snicker Date: Sun, 27 Jun 2021 16:34:23 +0000 (+0800) Subject: Gator X-Git-Url: http://git.snicker.com.cn/sitemap.xml?a=commitdiff_plain;h=e1386a1d1b216f8cefcebbcd3e94ca04be376b46;p=protocol_srv.git Gator 协议完善,把所有涉及到的命令进行定义。 完成对命令的检测以及命令解析。 完成了登陆和心跳包,可以设置时间。 --- diff --git a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java index 3d806422..550ebc33 100644 --- a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java +++ b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java @@ -990,9 +990,12 @@ public class Runtime { this.lockSimInfo = paramBoolean; } - + //Gator 使用 + public void setmccmnc(String mccmnc){ + this.mccAndMnc = mccmnc; + } + //实际上是分别设置MCC和MNC public void setMccAndMnc(String MccMnc) { - this.mccAndMnc = MccMnc; String[] list = MccMnc.split(","); if (list.length >= 2) { diff --git a/app/src/main/java/com/enqualcomm/support/utils/CellInfoUtil.java b/app/src/main/java/com/enqualcomm/support/utils/CellInfoUtil.java index 6bcb7cb8..15426c9c 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/CellInfoUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/CellInfoUtil.java @@ -182,6 +182,7 @@ public class CellInfoUtil { mccmnc=telephonyManager.getSimOperator(); } ICLogger.i("LBS mccmnc "+mccmnc); + runtime.setmccmnc(mccmnc); if (mccmnc != null && mccmnc.length() > 3) { diff --git a/app/src/main/java/com/enqualcomm/support/utils/TimeUtil.java b/app/src/main/java/com/enqualcomm/support/utils/TimeUtil.java index 153b0175..ac88bf81 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/TimeUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/TimeUtil.java @@ -10,6 +10,7 @@ import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Locale; +import java.util.SimpleTimeZone; import java.util.TimeZone; import static android.content.Context.ALARM_SERVICE; @@ -87,7 +88,21 @@ public class TimeUtil { public static String getUTCSystemTimeHHmmss() { return (new SimpleDateFormat("HHmmss")).format(new Date(System.currentTimeMillis() - TimeZone.getDefault().getRawOffset())); } + public static Date parsetiime( String time) { + SimpleDateFormat df1 = new SimpleDateFormat("HH:mm");//需要转化成的时间格式 08:00:00,2016-01-12 + Date date1 = null; + try { + String dt = time; + ICLogger.i("parseDatetiime " + dt); + date1 = df1.parse(dt); + return date1; + } catch (ParseException e) { + e.printStackTrace(); + ICLogger.e(e.getMessage(), e); + return null; + } + } public static Date parseDatetiime(String date, String time) { // SimpleDateFormat dff = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS", Locale.ENGLISH);//输入的被转化的时间格式 @@ -246,7 +261,62 @@ public class TimeUtil { android.provider.Settings.Global.putInt(mContext.getContentResolver(), android.provider.Settings.Global.AUTO_TIME, checked); } + public static void setSysDateTime(Context mContext, Date datetime, String timezoneStr, boolean addtimezoneToTime) { + AlarmManager alarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE); + Locale.getDefault().getDisplayCountry(); + String timezone_name = ""; + + if(timezoneStr.startsWith("e")||timezoneStr.startsWith("E")){ + timezone_name = String.format("GMT+%1$s:%2$s",timezoneStr.substring(1,2),timezoneStr.substring(3,4)); + }else{ + timezone_name = String.format("GMT-%1$s:%2$s", timezoneStr.substring(1,2),timezoneStr.substring(3,4)); + } + ICLogger.i("====set timezone " + timezone_name); + TimeZone tz = TimeZone.getTimeZone(timezone_name); + ICLogger.i("====set timezone " + tz.getDisplayName()); + + Calendar c = Calendar.getInstance(); + + ICLogger.i("====origin time " + c.getTime().toString() + " time zone " + c.getTimeZone()); + c.setTime(datetime); + int timezonehours=0; + int timezoneminutes=0; + try { + timezonehours = Integer.parseInt(timezoneStr.substring(1, 2)); + timezoneminutes = Integer.parseInt(timezoneStr.substring(3, 4)); + }catch (Exception e){ + ICLogger.e(e.getMessage(),e); + } + if (addtimezoneToTime) { + if (is24Hour(mContext)) { + c.add(Calendar.HOUR_OF_DAY, timezonehours);//24小时制 + c.add(Calendar.MINUTE,timezoneminutes); + } else { + c.add(Calendar.HOUR, timezonehours);//12小时制 + c.add(Calendar.MINUTE,timezoneminutes); + } + c.setTimeZone(tz); + } +// alarmManager.setTimeZone(); + long when = c.getTimeInMillis(); + if (when / 1000 < Integer.MAX_VALUE) { + //SystemClock.setCurrentTimeMillis(when); + alarmManager.setTime(when); + } + + Calendar d = Calendar.getInstance(); + long now = d.getTimeInMillis(); + //Log.d(TAG, "set tm="+when + ", now tm="+now); + + if (now - when > 1000) { + ICLogger.i("====set time failed now(" + now + ")-when(" + when + ") > 1000 !"); + } + + ICLogger.i("====set time to " + d.getTime().toString() + " time zone " + d.getTimeZone()); + + + } public static void setSysDateTime(Context mContext, Date datetime, int timezone, boolean addtimezoneToTime) { AlarmManager alarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE); @@ -323,7 +393,19 @@ public class TimeUtil { TimeZone tz = TimeZone.getTimeZone(timeZone); now.setTimeZone(tz); } - + //gator 使用,采用 e0800 格式 + public static void setTimeZone(Context context, String timeZonedate) { + String timezone_name = ""; + if(timeZonedate.startsWith("e")||timeZonedate.startsWith("E")){ + timezone_name = String.format("GMT+%1$s:%2$s",timeZonedate.substring(1,2),timeZonedate.substring(3,4)); + }else{ + timezone_name = String.format("GMT-%1$s:%2$s", timeZonedate.substring(1,2),timeZonedate.substring(3,4)); + } + ICLogger.i("====set timezone " + timezone_name); + //TimeZone tz = TimeZone.getTimeZone(timezone_name); + updateTimeZone(context, timezone_name); + } + //当前设置timezone的方式,与语言选择方法一致。 public static void setTimeZone(Context context, int timeZone) { final Calendar now = Calendar.getInstance(); @@ -339,6 +421,7 @@ public class TimeUtil { updateTimeZone(context, timezone_name); } + //暂时不适用的方法和语言选择里不一致 public static void setTimeZone(int timeZone) { final Calendar now = Calendar.getInstance(); String timezone_name = ""; diff --git a/app/src/main/java/com/enqualcomm/support/utils/regexUtil.java b/app/src/main/java/com/enqualcomm/support/utils/regexUtil.java index 4a1f5106..6170cd2d 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/regexUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/regexUtil.java @@ -12,6 +12,7 @@ import java.util.regex.Pattern; public class regexUtil { + public static final Pattern PATTERN_FZD_CMD_HEADER= Pattern .compile("IC\\*\\d{15}\\*\\d*\\*[a-zA-Z0-9]+$"); /** @@ -157,4 +158,11 @@ public class regexUtil { return Pattern.compile("IC\\*\\d{15}\\*[a-fA-F0-9]{4}\\*"+cmd).matcher(s).matches(); } + public static boolean isGatorCMD(String s){ + return Pattern.compile("\\([a-fA-F0-9]{4}\\d{15}[a-zA-Z0-9]{4}.*").matcher(s).matches(); + } + public static boolean isGatorCMD(String cmd, String s){ + return Pattern.compile("\\([a-fA-F0-9]{4}\\d{15}"+cmd+".*").matcher(s).matches(); + } + } diff --git a/app/src/main/java/com/ic/protocols/protocol_gator.java b/app/src/main/java/com/ic/protocols/protocol_gator.java index bd2f5c79..097a119a 100644 --- a/app/src/main/java/com/ic/protocols/protocol_gator.java +++ b/app/src/main/java/com/ic/protocols/protocol_gator.java @@ -25,6 +25,7 @@ import com.enqualcomm.support.service.HeartRateManager; import com.enqualcomm.support.utils.AESCipher; import com.enqualcomm.support.utils.CameraUtil; import com.enqualcomm.support.utils.Connection; +import com.enqualcomm.support.utils.DeviceInfoUtil; import com.enqualcomm.support.utils.ICAudioManager; import com.enqualcomm.support.utils.ICLogger; import com.enqualcomm.support.utils.TemperatureUtil; @@ -32,6 +33,7 @@ import com.enqualcomm.support.utils.TimeUtil; import com.enqualcomm.support.utils.Util; import com.enqualcomm.support.utils.VibrateUtil; import com.enqualcomm.support.utils.WakeLockUtil; +import com.enqualcomm.support.utils.regexUtil; import com.ic.view.msg.MsgMustReadDialog; import java.io.File; @@ -42,6 +44,8 @@ import java.util.HashMap; import java.util.List; import java.util.Locale; +import chestnut.utils.RegexUtils; + import static com.enqualcomm.support.Constants.DIALOG_ACTION; import static com.enqualcomm.support.Constants.FROM_SERVER; import static com.enqualcomm.support.LocationClient.LOCATION_MODE; @@ -67,240 +71,133 @@ public class protocol_gator { private static final String CMDHEADER = "("; private static final String CMDEND = ")"; private static final String CMDSPLIT = ","; - public static final String defaultServerIP = "13.59.36.164"; - public static final int defaultServerPort = 7030; + // public static final String defaultServerIP = "13.59.36.164"; + // public static final int defaultServerPort = 7030; + public static final String defaultServerIP = "snickersun.oicp.net"; + public static final int defaultServerPort = 54944; public enum CMD_TYPE { + /* 服务器发起*/ + AP00,//立即定位 + AP01,//设置服务器地址和端口 + AP02,//设置APN + AP03,//修改时区 + AP04,//读取终端版本信息 + AP05,//监听 + AP06,//设置亲情号码 + AP07,//清空亲情号码 + AP08,//重启 + AP09,//设置闹钟 + AP10,//情景模式 + AP11,//服务器通知 + AP12,//下载微聊信息 + AP14,//下载定位数据 + AP15,//开关机控制 + AP16,//服务器激活SOS模式 + AP18,//手表名字设置 + AP20,//设置手表语言 + AP21,//铃声音量设置 + AP22,//隐身时段 + AP23,//亲情号码自拍图片设置 + AP25,//删除亲情号码自拍图片 + AP26,//下发APP Url消息 + AP30,//BP30回复 + AP31,//BP31回复 + AP32,//BP32回复 + AP34,//BP34回复 /*终端发起*/ - AP00,//登录包 - BP00, - AP01,//混合定位 - BP01, - AP02,//多基站定位 - BP02, - AP92,//CDMA 混合定位 - BP92, - AP94, - BP94, - AP03,//心跳包 - BP03, - AP05,//语音查询接收 - BP05, - AP07,//语音上行 - BP07, - AP10,//报警与地址回复 - BP10, - AP49,//心率上传 - BP49, - APHT,//心率血压上传 - BPHT, - APTM,//基站校时及获取定位 - BPTM, - APCH,//充电提示 - BPCH, - APBR,//上传蓝牙扫描结果 - BPBR, - /* 服务器发起*/ - AP12, - BP12,//SOS 号码设置 - AP14, - BP14,//设置联系人白名单 - AP15, - BP15,//设置定位周期 - AP16, - BP16,//立即定位 - AP17, - BP17,//恢复出厂设置 - AP18, - BP18,//重启设备 - AP21, - BP21,//设置计步开关 - AP28, - BP28, //语音下行 - AP31, - BP31,//关机 - AP33, - BP33,//工作模式 - AP34, - BP34,//自定义工作模式 - AP40, - BP40,//下发文本 - AP68, - BP68,//绑定解绑 - APXL, - BPXL,//测量心率 - APXY, - BPXY,//测量血压 - APJZ, - BPJZ,//血压校准 - AP84, - BP84,//白名单开关 - AP85, - BP85,//设置闹钟 - AP86, - BP86,//心率周期 - AP87, - BP87,//二维码更新 - AP88, - BP88,//查找手表 - AP89, - BP89,//心率血压阀值设置 - APTE, - BPTE,//体温间隔设置 - APTP, - BPTP,//体温上行 - APX1, - BPX1,//心率血压血氧修正 - APS4, - BPS4,//提醒设置(时间段) - APHP,//上报心率血压血氧 - BPHP, - APDE,//进出围栏通知 - BPDE, - APDG,//体温阀值设置 - BPDG, - APTU,//上传语音图片 - BPTU, - APSL,//上传睡眠数据 - BPSL, - AP46,//立即拍照 - BP46, - APDH,//聆听 - BPDH, - AP99,//监听电话 - BP99, - APTQ,//天气 - BPTQ, - APAT,//剪断消息开关 - BPAT, - APBT, - BPBT,//设置蓝牙扫描间隔 - APBS, - BPBS,//设置蓝牙绑定Major - APWL, - BPWL,//设置白名单 - AP65, - BP65,//设置音量 - AP47, - BP47,//设置震动 - UNKNOWN_CMD, + BP00,//开机对时 + BP01,//AP01返回 + BP02,//AP02返回 + BP03,//AP03返回 + BP05,//AP05返回 + BP06,//AP06返回 + BP07,//AP07返回 + BP08,//AP08返回 + BP09,//AP09返回 + BP10,//AP10返回 + BP11,//AP11返回 + BP12,//AP12返回 + BP14,//AP14返回 + BP15,//AP15返回 + BP16,//AP16返回 + BP18,//AP18返回 + BP20,//AP20返回 + BP21,//AP21返回 + BP22,//AP22返回 + BP23,//AP23返回 + BP25,//AP25返回 + BP26,//AP26返回 + BP30,//上传定位数据 + BP31,//登陆服务器消息 + BP32,//查询服务器微聊消息 + BP33,//发送状态包给服务器(心跳) + BP34,//上传微聊信息 + BP35,//好友添加请求 + UNKNOWN_CMD } private static HashMap cmdMap; static { cmdMap = new HashMap(); + /* 服务器发起*/ cmdMap.put(CMD_TYPE.AP00, "AP00"); - cmdMap.put(CMD_TYPE.BP00, "BP00"); cmdMap.put(CMD_TYPE.AP01, "AP01"); - cmdMap.put(CMD_TYPE.BP01, "BP01"); cmdMap.put(CMD_TYPE.AP02, "AP02"); - cmdMap.put(CMD_TYPE.BP02, "BP02"); - cmdMap.put(CMD_TYPE.AP92, "AP92"); - cmdMap.put(CMD_TYPE.BP92, "BP92"); - cmdMap.put(CMD_TYPE.AP94, "AP94"); - cmdMap.put(CMD_TYPE.BP94, "BP94"); cmdMap.put(CMD_TYPE.AP03, "AP03"); - cmdMap.put(CMD_TYPE.BP03, "BP03"); + cmdMap.put(CMD_TYPE.AP04, "AP04"); cmdMap.put(CMD_TYPE.AP05, "AP05"); - cmdMap.put(CMD_TYPE.BP05, "BP05"); + cmdMap.put(CMD_TYPE.AP06, "AP06"); cmdMap.put(CMD_TYPE.AP07, "AP07"); - cmdMap.put(CMD_TYPE.BP07, "BP07"); + cmdMap.put(CMD_TYPE.AP08, "AP08"); + cmdMap.put(CMD_TYPE.AP09, "AP09"); cmdMap.put(CMD_TYPE.AP10, "AP10"); - cmdMap.put(CMD_TYPE.BP10, "BP10"); - cmdMap.put(CMD_TYPE.AP49, "AP49"); - cmdMap.put(CMD_TYPE.BP49, "BP49"); - cmdMap.put(CMD_TYPE.APHT, "APHT"); - cmdMap.put(CMD_TYPE.BPHT, "BPHT"); - cmdMap.put(CMD_TYPE.APTM, "APTM"); - cmdMap.put(CMD_TYPE.BPTM, "BPTM"); - cmdMap.put(CMD_TYPE.APCH, "APCH"); - cmdMap.put(CMD_TYPE.BPCH, "BPCH"); - cmdMap.put(CMD_TYPE.APBR, "APBR"); - cmdMap.put(CMD_TYPE.BPBR, "BPBR"); - /* 服务器发起*/ + cmdMap.put(CMD_TYPE.AP11, "AP11"); cmdMap.put(CMD_TYPE.AP12, "AP12"); - cmdMap.put(CMD_TYPE.BP12, "BP12"); cmdMap.put(CMD_TYPE.AP14, "AP14"); - cmdMap.put(CMD_TYPE.BP14, "BP14"); cmdMap.put(CMD_TYPE.AP15, "AP15"); - cmdMap.put(CMD_TYPE.BP15, "BP15"); cmdMap.put(CMD_TYPE.AP16, "AP16"); - cmdMap.put(CMD_TYPE.BP16, "BP16"); - cmdMap.put(CMD_TYPE.AP17, "AP17"); - cmdMap.put(CMD_TYPE.BP17, "BP17"); cmdMap.put(CMD_TYPE.AP18, "AP18"); - cmdMap.put(CMD_TYPE.BP18, "BP18"); + cmdMap.put(CMD_TYPE.AP20, "AP20"); cmdMap.put(CMD_TYPE.AP21, "AP21"); - cmdMap.put(CMD_TYPE.BP21, "BP21"); - cmdMap.put(CMD_TYPE.AP28, "AP28"); - cmdMap.put(CMD_TYPE.BP28, "BP28"); + cmdMap.put(CMD_TYPE.AP22, "AP22"); + cmdMap.put(CMD_TYPE.AP23, "AP23"); + cmdMap.put(CMD_TYPE.AP25, "AP25"); + cmdMap.put(CMD_TYPE.AP26, "AP26"); + cmdMap.put(CMD_TYPE.AP30, "AP30"); cmdMap.put(CMD_TYPE.AP31, "AP31"); + cmdMap.put(CMD_TYPE.AP32, "AP32"); + cmdMap.put(CMD_TYPE.AP34, "AP34"); + /* 终端发起*/ + cmdMap.put(CMD_TYPE.BP00, "BP00"); + cmdMap.put(CMD_TYPE.BP01, "BP01"); + cmdMap.put(CMD_TYPE.BP02, "BP02"); + cmdMap.put(CMD_TYPE.BP03, "BP03"); + cmdMap.put(CMD_TYPE.BP05, "BP05"); + cmdMap.put(CMD_TYPE.BP06, "BP06"); + cmdMap.put(CMD_TYPE.BP07, "BP07"); + cmdMap.put(CMD_TYPE.BP08, "BP08"); + cmdMap.put(CMD_TYPE.BP09, "BP09"); + cmdMap.put(CMD_TYPE.BP10, "BP10"); + cmdMap.put(CMD_TYPE.BP11, "BP11"); + cmdMap.put(CMD_TYPE.BP12, "BP12"); + cmdMap.put(CMD_TYPE.BP14, "BP14"); + cmdMap.put(CMD_TYPE.BP15, "BP15"); + cmdMap.put(CMD_TYPE.BP16, "BP16"); + cmdMap.put(CMD_TYPE.BP18, "BP18"); + cmdMap.put(CMD_TYPE.BP20, "BP20"); + cmdMap.put(CMD_TYPE.BP21, "BP21"); + cmdMap.put(CMD_TYPE.BP22, "BP22"); + cmdMap.put(CMD_TYPE.BP23, "BP23"); + cmdMap.put(CMD_TYPE.BP25, "BP25"); + cmdMap.put(CMD_TYPE.BP26, "BP26"); + cmdMap.put(CMD_TYPE.BP30, "BP30"); cmdMap.put(CMD_TYPE.BP31, "BP31"); - cmdMap.put(CMD_TYPE.AP33, "AP33"); + cmdMap.put(CMD_TYPE.BP32, "BP32"); cmdMap.put(CMD_TYPE.BP33, "BP33"); - cmdMap.put(CMD_TYPE.AP34, "AP34"); cmdMap.put(CMD_TYPE.BP34, "BP34"); - cmdMap.put(CMD_TYPE.AP40, "AP40"); - cmdMap.put(CMD_TYPE.BP40, "BP40"); - cmdMap.put(CMD_TYPE.AP68, "AP68"); - cmdMap.put(CMD_TYPE.BP68, "BP68"); - cmdMap.put(CMD_TYPE.APXL, "APXL"); - cmdMap.put(CMD_TYPE.BPXL, "BPXL"); - cmdMap.put(CMD_TYPE.APXY, "APXY"); - cmdMap.put(CMD_TYPE.BPXY, "BPXY"); - cmdMap.put(CMD_TYPE.APJZ, "APJZ"); - cmdMap.put(CMD_TYPE.BPJZ, "BPJZ"); - cmdMap.put(CMD_TYPE.AP84, "AP84"); - cmdMap.put(CMD_TYPE.BP84, "BP84"); - cmdMap.put(CMD_TYPE.AP85, "AP85"); - cmdMap.put(CMD_TYPE.BP85, "BP85"); - cmdMap.put(CMD_TYPE.AP86, "AP86"); - cmdMap.put(CMD_TYPE.BP86, "BP86"); - cmdMap.put(CMD_TYPE.AP87, "AP87"); - cmdMap.put(CMD_TYPE.BP87, "BP87"); - cmdMap.put(CMD_TYPE.AP88, "AP88"); - cmdMap.put(CMD_TYPE.BP88, "BP88"); - cmdMap.put(CMD_TYPE.AP89, "AP89"); - cmdMap.put(CMD_TYPE.BP89, "BP89"); - cmdMap.put(CMD_TYPE.APTE, "APTE"); - cmdMap.put(CMD_TYPE.BPTE, "BPTE"); - cmdMap.put(CMD_TYPE.APTP, "APTP"); - cmdMap.put(CMD_TYPE.BPTP, "BPTP"); - cmdMap.put(CMD_TYPE.APX1, "APX1"); - cmdMap.put(CMD_TYPE.BPX1, "BPX1"); - cmdMap.put(CMD_TYPE.APS4, "APS4"); - cmdMap.put(CMD_TYPE.BPS4, "BPS4"); - cmdMap.put(CMD_TYPE.APHP, "APHP"); - cmdMap.put(CMD_TYPE.BPHP, "BPHP"); - cmdMap.put(CMD_TYPE.APDE, "APDE"); - cmdMap.put(CMD_TYPE.BPDE, "BPDE"); - cmdMap.put(CMD_TYPE.APDG, "APDG"); - cmdMap.put(CMD_TYPE.BPDG, "BPDG"); - cmdMap.put(CMD_TYPE.APTU, "APTU"); - cmdMap.put(CMD_TYPE.BPTU, "BPTU"); - cmdMap.put(CMD_TYPE.APSL, "APSL"); - cmdMap.put(CMD_TYPE.BPSL, "BPSL"); - cmdMap.put(CMD_TYPE.AP46, "AP46"); - cmdMap.put(CMD_TYPE.BP46, "BP46"); - cmdMap.put(CMD_TYPE.APDH, "APDH"); - cmdMap.put(CMD_TYPE.BPDH, "BPDH"); - cmdMap.put(CMD_TYPE.AP99, "AP99"); - cmdMap.put(CMD_TYPE.BP99, "BP99"); - cmdMap.put(CMD_TYPE.APTQ, "APTQ"); - cmdMap.put(CMD_TYPE.BPTQ, "BPTQ"); - cmdMap.put(CMD_TYPE.APAT, "APAT"); - cmdMap.put(CMD_TYPE.BPAT, "BPAT"); - cmdMap.put(CMD_TYPE.APBT, "APBT"); - cmdMap.put(CMD_TYPE.BPBT, "BPBT"); - cmdMap.put(CMD_TYPE.APBS, "APBS"); - cmdMap.put(CMD_TYPE.BPBS, "BPBS"); - cmdMap.put(CMD_TYPE.APWL, "APWL"); - cmdMap.put(CMD_TYPE.BPWL, "BPWL"); - cmdMap.put(CMD_TYPE.AP65, "AP65"); - cmdMap.put(CMD_TYPE.BP65, "BP65"); - cmdMap.put(CMD_TYPE.AP47, "AP47"); - cmdMap.put(CMD_TYPE.BP47, "BP47"); + cmdMap.put(CMD_TYPE.BP35, "BP35"); } @@ -327,7 +224,7 @@ public class protocol_gator { int head_index = msg.indexOf(CMDHEADER); if (head_index >= 0) { - int end_index = msg.indexOf("#", head_index); + int end_index = msg.indexOf(CMDEND, head_index); if (end_index < 0) { return ""; @@ -337,8 +234,8 @@ public class protocol_gator { } for (CMD_TYPE key : cmdMap.keySet()) { - if (msg.startsWith(CMDHEADER + cmdMap.get(key))) { - ICLogger.i("found cmd keyid=" + key + " ,keyname=" + cmdMap.get(key)); + if (regexUtil.isGatorCMD(cmdMap.get(key),msg)) { + ICLogger.i("found gator cmd keyid=" + key + " ,keyname=" + cmdMap.get(key)); return cmdMap.get(key); } } @@ -362,14 +259,15 @@ public class protocol_gator { String encreptionMSGHeader="GT"; encreptedStr=AESCipher.aesEncryptStringFixedKey(msg); String len= String.format("%04x",encreptedStr.length()); - return encreptionMSGHeader+len+encreptedStr; + return encreptionMSGHeader+len+"01"+encreptedStr; } /**/ public static StringMessage genStringMessage(String cmdName, String msg) { //设置cmdName,在这里配置进去的msg没有实际用到 StringMessage sm = new StringMessage(new String[]{cmdName, msg}); //用此函数设置要发送的内容 - sm.refresh(msg); + sm.refresh(encrepteMsg(msg)); + // sm.refresh((msg)); //设置信息创建时间 sm.setDate(TimeUtil.getSystemDateYYMMDD(), TimeUtil.getSystemTimeHHmmss()); return sm; @@ -396,7 +294,7 @@ public class protocol_gator { if (cmdbuf.toString().endsWith(CMDEND)) { iscmdComplete = true; } - String[] cmdlist = cmd_msgbuf.split(CMDEND); + String[] cmdlist = cmd_msgbuf.split("\\"+CMDEND); int listlen = cmdlist.length; ICLogger.d("listlen " + listlen); /** @@ -409,18 +307,19 @@ public class protocol_gator { } for (int i = 0; i < listlen; i++) { for (CMD_TYPE key : cmdMap.keySet()) { - if (cmdlist[i].startsWith(CMDHEADER + cmdMap.get(key))) { - ICLogger.d("found cmd keyid=" + key + " ,keyname=" + cmdMap.get(key) + " , " + cmdlist[i]); - if (key == CMD_TYPE.BP28) { - //如果是BP28则 后面的数据是音频,需要保留 - byte[] amrBuf; - int amrLen = getBP28Amrlen(cmdlist[i]); - if (bytes.length > amrLen) { - handleCmd(key, cmdlist[i], bytes); - } - } else { - handleCmd(key, cmdlist[i]); - } + if (regexUtil.isGatorCMD(cmdMap.get(key),cmdlist[i]) ) { + ICLogger.d("found gator cmd keyid=" + key + " ,keyname=" + cmdMap.get(key) + " , " + cmdlist[i]); +// if (key == CMD_TYPE.BP28) { +// //如果是BP28则 后面的数据是音频,需要保留 +// byte[] amrBuf; +// int amrLen = getBP28Amrlen(cmdlist[i]); +// if (bytes.length > amrLen) { +// handleCmd(key, cmdlist[i], bytes); +// } +// } else { + String cmdi=cmdlist[i].trim().replace(CMDHEADER,"").replace(CMDEND,""); + handleCmd(key, cmdi); +// } } } } @@ -469,34 +368,72 @@ public class protocol_gator { return -1; } + private static String AddHeader(Runtime runtime,String msg){ + /*( CHAR 1 +%04X HEX_STRING 4 +0106 C_STRING 4 + C_STRING 15*/ + String len= String.format("%04x",msg.length()); + return new StringBuffer(CMDHEADER).append(len).append("0106").append(runtime.IMEI()).append(msg).append( + CMDEND).toString(); + + } + /*登录*/ public static StringMessage BP00(Runtime ds) { - //示例数据:IWAP00867155030001063# - return genStringMessage(cmdMap.get(CMD_TYPE.AP00), - new StringBuffer(CMDHEADER).append( - cmdMap.get(CMD_TYPE.AP00) - ).append(ds.IMEI()).append( - CMDEND).toString()); + //示例数据:BP00,AAAA,BB,CC + //AAAA:终端软件版本信息 + //BB:电池电量等级(0-7) + //0:低电关机 + //1:呼叫限制 + //2:低电报警 + //3: 0格显示 + //4: 1格显示 + //5:2格显示 + //6: 3格显示 + //7: 4格显示 + //CC:MCCMNC + + int batstat=0; + int batlevel=ds.getBatterylevel(); + if (batlevel>0 && batlevel<= 15){ + batstat=3; + }else if (batlevel>15 && batlevel<= 35){ + batstat=4; + }else if (batlevel>35 && batlevel<= 55){ + batstat=5; + }else if (batlevel>55 && batlevel<= 85){ + batstat=6; + }else { + batstat=7; + } + String msg=new StringBuffer(cmdMap.get(CMD_TYPE.BP00)).append(CMDSPLIT) + .append(DeviceInfoUtil.getSWVersionDisplayName()).append(CMDSPLIT) + .append(batstat).append(CMDSPLIT) + .append(ds.getMccAndMnc()) + .toString(); + + return genStringMessage(cmdMap.get(CMD_TYPE.BP00), AddHeader(ds,msg)); } //处理 登录 BP00 - public void handleBP00(Runtime runtime, String cmd) { + public void handleAP03(Runtime runtime, String cmd) { String[] msg = cmd.split(CMDSPLIT); -// get Msg :IWBP00,20191229171933,8# (size)24 -// 12-30 01:19:33.861 6492-6492/com.enqualcomm.support I/ICSrv.protocolAPIHelper: found cmd keyid=BP00 ,keyname=BP00 , IWBP00,20191229171933,8 - - if (msg.length >= 3) { - log("handleBP00", "Set Datetime " + msg[1]); - log("handleBP00", "Set TimeZone " + msg[2]); +// (003E357593060153353AP03,150728,152900,e0800,0000000000000003) +// 表示当前UTC时间为2015å¹´7月28日,15点29分00秒,时区是东8区,此时间用于手表时间同步 + if (msg.length == 5) { + log("handleBP00", "Set Datetime " + msg[1] + msg[2]); + log("handleBP00", "Set TimeZone " + msg[3]); try { - Date datetime = TimeUtil.parseDatetiime(msg[1]); - int timezone = Integer.parseInt(msg[2]); + Date datetime = TimeUtil.parseDatetiime("20"+msg[1]+msg[2]); + // Date timezone = TimeUtil.parsetiime(msg[3].substring(1)); + if (datetime != null) { ICLogger.i("===" + TimeUtil.getDefaultTimeZone()); - TimeUtil.setTimeZone(runtime.getContextProxy().context, timezone); + TimeUtil.setTimeZone(runtime.getContextProxy().context, msg[3]); ICLogger.i("===" + TimeUtil.getDefaultTimeZone()); - TimeUtil.setSysDateTime(runtime.getContextProxy().context, datetime, timezone, true); + TimeUtil.setSysDateTime(runtime.getContextProxy().context, datetime, msg[3], true); ICLogger.i("===" + TimeUtil.getDefaultTimeZone()); } @@ -507,17 +444,42 @@ public class protocol_gator { // Set TimeZone 8 } else { - log("handleBP00", "format Error"); + log("handleAP03", "format Error"); } } public static StringMessage BP33(Runtime ds) { - return genStringMessage(cmdMap.get(CMD_TYPE.AP00), - new StringBuffer(CMDHEADER).append( - cmdMap.get(CMD_TYPE.AP00) - ).append(ds.IMEI()).append( - CMDEND).toString()); - } +//(00520106357593060153353BP33,0,000000FF,5,46000024820000DE127,151028,163100,0,0,0) +//报警类型:0x0 无报警;0x02 SOS报警;0x08 电池低电量报警;0x20 设备脱离 +//总步数:000000FF +//电量等级:5 +//基站接入点:46000024820000DE127 +//日期时间:151028,163100 + int batstat=0; + int batlevel=ds.getBatterylevel(); + if (batlevel>0 && batlevel<= 15){ + batstat=0; + }else if (batlevel>15 && batlevel<= 35){ + batstat=1; + }else if (batlevel>35 && batlevel<= 55){ + batstat=2; + }else if (batlevel>55 && batlevel<= 85){ + batstat=3; + }else { + batstat=4; + } + String netstat="46000024820000DE127"; + String msg=new StringBuffer(cmdMap.get(CMD_TYPE.BP33)).append(CMDSPLIT) + .append(0).append(CMDSPLIT) + .append(String.format("%08X", ds.getTotalStepCount())).append(CMDSPLIT) + .append(batstat).append(CMDSPLIT) + .append(netstat).append(CMDSPLIT) + .append(TimeUtil.getSystemDateYYMMDD()).append(CMDSPLIT) + .append(TimeUtil.getSystemTimeHHmmss()) + .toString(); + + return genStringMessage(cmdMap.get(CMD_TYPE.BP33), AddHeader(ds,msg)); + } public static StringMessage AP03(Runtime ds) { //示例数据:IWAP03,06000908000102,5555,30# IWAP03,000000null00000,0,0# //IW: 标识符 @@ -540,10 +502,16 @@ public class protocol_gator { .append(ds.getTotalStepCount()).append(CMDSPLIT).append(ds.getRolltimes()).append(CMDEND).toString()); } - //处理 心跳 BP03 - public void handleBP03(String cmd) { - - log("BP03心跳接收成功"); + public StringMessage BP03(boolean success){ + if (success){ + return genStringMessage(cmdMap.get(CMD_TYPE.BP03),cmdMap.get(CMD_TYPE.BP03)+"00000000000000031"); + }else{ + return genStringMessage(cmdMap.get(CMD_TYPE.BP03),cmdMap.get(CMD_TYPE.BP03)+"00000000000000030"); + } + } + public void handleAP04(Runtime ds,Connection connection,String cmd) { + log("AP04读取版本,返回BP00"); + connection.send(BP00(ds)); } @@ -635,7 +603,7 @@ public class protocol_gator { public static StringMessage APXL(String id) { //设备响应: IWAPXL,080835# //080835:指令流水号 - return genStringMessage(cmdMap.get(CMD_TYPE.APXL), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APXL)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDEND).toString()); } @@ -670,7 +638,7 @@ public class protocol_gator { public static StringMessage APXY(String id) { //设备响应: IWAPXY,080835# //080835:指令流水号 - return genStringMessage(cmdMap.get(CMD_TYPE.APXY), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APXY)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDEND).toString()); } @@ -707,7 +675,7 @@ public class protocol_gator { //设备响应: IWAPJZ,792997,120,85,42,1# //792997:指令流水号 // 高压120,低压85,年龄42,1 男性 - return genStringMessage(cmdMap.get(CMD_TYPE.APJZ), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APJZ)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDSPLIT).append(BPH) .append(CMDSPLIT).append(BPL) @@ -778,7 +746,7 @@ public class protocol_gator { //恢复出厂设置 public static StringMessage AP17(String index) { - return genStringMessage(cmdMap.get(CMD_TYPE.AP17), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP17)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(index) .append(CMDEND).toString()); } @@ -798,7 +766,7 @@ public class protocol_gator { public static StringMessage AP31(String index) { - return genStringMessage("AP31", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP31)) + return genStringMessage("AP31", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(index) .append(CMDEND).toString()); } @@ -966,7 +934,7 @@ public class protocol_gator { public static StringMessage AP85(Runtime ds, String cmddata) { //示例数据:IWAP49,68## - return genStringMessage("AP85", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP85)) + return genStringMessage("AP85", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(cmddata) .append(CMDEND).toString()); @@ -1167,7 +1135,7 @@ public class protocol_gator { //IWAP33,080835,1# //080835:指令流水号 //1:设置信息,供服务器同步 - return genStringMessage("AP33", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP33)) + return genStringMessage("AP33", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(cmdindex) .append(CMDSPLIT).append(workMode) .append(CMDEND).toString()); @@ -1228,7 +1196,7 @@ public class protocol_gator { //IWAP34,588854,1# //080835:指令流水号 //8:模式 - return genStringMessage("AP34", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP34)) + return genStringMessage("AP34", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(cmdindex) .append(CMDSPLIT).append(workMode) .append(CMDEND).toString()); @@ -1340,7 +1308,7 @@ public class protocol_gator { // IWAP40,080835,1# // 080835:指令流水号 // 1:表示设备接受数据成功,0表示设备接受数据失败 - return genStringMessage("AP40", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP40)) + return genStringMessage("AP40", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(cmdindex) .append(CMDSPLIT).append(success) .append(CMDEND).toString()); @@ -1355,7 +1323,7 @@ public class protocol_gator { */ public static StringMessage AP49(Runtime ds) { //示例数据:IWAP49,68## - return genStringMessage(cmdMap.get(CMD_TYPE.AP49), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP49)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(ds.getHRS().getPPG()) .append(CMDEND).toString()); @@ -1378,7 +1346,7 @@ public class protocol_gator { //85 : 血压低压 [舒张压] //平台响应: IWBPHT# //表示平台已接收,可不作响应 - return genStringMessage(cmdMap.get(CMD_TYPE.APHT), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APHT)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(ds.getHRS().getPPG()) .append(CMDSPLIT).append(ds.getHRS().getBPH()) .append(CMDSPLIT).append(ds.getHRS().getBPL()) @@ -1395,7 +1363,7 @@ public class protocol_gator { //85 : 血压低压 [舒张压] //平台响应: IWBPHT# //表示平台已接收,可不作响应 - return genStringMessage(cmdMap.get(CMD_TYPE.APHT), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APHT)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(ppg) .append(CMDSPLIT).append(bph) .append(CMDSPLIT).append(bpl) @@ -1443,7 +1411,7 @@ public class protocol_gator { //9750: LAC //3613: CID - return genStringMessage(cmdMap.get(CMD_TYPE.APTM), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APTM)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(ds.getLocationInstance().getMCC()) .append(CMDSPLIT).append(ds.getLocationInstance().getMNC()) .append(CMDSPLIT).append(ds.getLocationInstance().getLAC()) @@ -1514,7 +1482,7 @@ public class protocol_gator { /*语音下行反馈*/ public static StringMessage AP28(String name, String msg, int packagecount, int currentpackageindex, int received_success) { //示例数据:IWAP28,D3590D54,xxxx,6,1,1# - return genStringMessage("AP28", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP28)) + return genStringMessage("AP28", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(name) .append(CMDSPLIT).append(msg) .append(CMDSPLIT).append(packagecount) @@ -1623,7 +1591,7 @@ public class protocol_gator { //设备响应: IWAP80,080835,1# //080835:指令流水号 //1:表示设备执行成功,0 表示设备执行失败 - return genStringMessage("AP84", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP84)) + return genStringMessage("AP84", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(index) .append(CMDSPLIT).append(success) .append(CMDEND).toString()); @@ -1664,7 +1632,7 @@ public class protocol_gator { //设备响应: IWAP86, 080835,1# //080835:指令流水号 - return genStringMessage("AP86", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP68)) + return genStringMessage("AP86", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(index) .append(CMDSPLIT).append(cmd) .append(CMDEND).toString()); @@ -1726,7 +1694,7 @@ public class protocol_gator { //设备响应: IWAP86, 080835# //080835:指令流水号 - return genStringMessage("AP86", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP86)) + return genStringMessage("AP86", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(index) .append(CMDEND).toString()); } @@ -1774,7 +1742,7 @@ public class protocol_gator { //设备响应: IWAP86, 080835# //080835:指令流水号 - return genStringMessage("AP87", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP87)) + return genStringMessage("AP87", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDEND).toString()); } @@ -1806,7 +1774,7 @@ public class protocol_gator { public static StringMessage AP88(String index) { //设备响应: IWAP88, 080835# //080835:指令流水号 - return genStringMessage("AP88", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP88)) + return genStringMessage("AP88", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(index) .append(CMDEND).toString()); } @@ -1830,7 +1798,7 @@ public class protocol_gator { //设备响应: IWAP89, 080835# //080835:指令流水号 - return genStringMessage("AP89", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP89)) + return genStringMessage("AP89", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(index) .append(CMDEND).toString()); } @@ -1875,7 +1843,7 @@ public class protocol_gator { //设备响应: IWAPTE,080835,60# //080835:指令流水号 //1:表示设备接受数据成功,0表示设备接受数据失败 - return genStringMessage("APTE", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APTE)) + return genStringMessage("APTE", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(index) .append(CMDSPLIT).append(freq) .append(CMDEND).toString()); @@ -1919,7 +1887,7 @@ public class protocol_gator { //APTP : 命令字符 //35.3:测量体温 (摄氏度) //33,132:温补用的参数,此处不用,可以用0 来代替。 目前是代表的腕温,室外温度 - return genStringMessage(cmdMap.get(CMD_TYPE.APTP), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APTP)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(String.format("%1$.1f", body_temp)) .append(CMDSPLIT).append(String.format("%1$.1f", wrist_temp)) .append(CMDSPLIT).append(String.format("%1$.1f", tempout)) @@ -1936,7 +1904,7 @@ public class protocol_gator { public static StringMessage APX1(String id) { //设备响应: IWAPX1, 080835# //080835:指令流水号 - return genStringMessage("APX1", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APX1)) + return genStringMessage("APX1", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDEND).toString()); } @@ -1998,7 +1966,7 @@ public class protocol_gator { public static StringMessage APS4(String id) { //设备响应: IWAPS4,080835# //080835:指令流水号 - return genStringMessage("APS4", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APS4)) + return genStringMessage("APS4", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDEND).toString()); } @@ -2069,7 +2037,7 @@ public class protocol_gator { //95:血氧 //90:血糖 // 本消息适用所有终端,其中需要每项指标不一定全部有值,如果无值,则留空 - return genStringMessage(cmdMap.get(CMD_TYPE.APHP), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APHP)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(ds.getHRS().getPPG()) .append(CMDSPLIT).append(ds.getHRS().getBPH()) .append(CMDSPLIT).append(ds.getHRS().getBPL()) @@ -2096,7 +2064,7 @@ public class protocol_gator { //95:血氧 //90:血糖 // 本消息适用所有终端,其中需要每项指标不一定全部有值,如果无值,则留空 - return genStringMessage(cmdMap.get(CMD_TYPE.APHP), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APHP)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(ppg) .append(CMDSPLIT).append(bph) .append(CMDSPLIT).append(bpl) @@ -2127,7 +2095,7 @@ public class protocol_gator { * 080835:指令流水号 * 说明: 本消息适用所有终端 */ - return genStringMessage("APDE", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APDE)) + return genStringMessage("APDE", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDEND).toString()); } @@ -2176,7 +2144,7 @@ public class protocol_gator { } public static StringMessage APDG(String id) { - return genStringMessage("APDG", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APDG)) + return genStringMessage("APDG", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDEND).toString()); } @@ -2256,7 +2224,7 @@ public class protocol_gator { * 收到设备回复确认数据包接收成功状态后,继续开始依次上传下一个数据包。。。。。。 * 如果设备回复确认数据包接收失败状态,则重复发送上一个数据包 */ - String sb = new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APTU)) + String sb = new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT) .append(CMDSPLIT).append(packetTime) .append(CMDSPLIT).append(filetype) @@ -2338,18 +2306,18 @@ public class protocol_gator { * 换算分数后发送到服务器 * #:结束符 */ - String sb = new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APSL)) + String sb = new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(date) .append(CMDSPLIT).append(deepsleep) .append(CMDSPLIT).append(lightsleep) .append(CMDSPLIT).append(score) .append(CMDEND).toString(); - return genStringMessage(cmdMap.get(CMD_TYPE.APSL), sb); + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), sb); } public static StringMessage AP46(String id, String cmd) { - return genStringMessage(cmdMap.get(CMD_TYPE.AP46), - new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP46)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), + new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDSPLIT).append(cmd) .append(CMDEND).toString()); @@ -2411,8 +2379,8 @@ public class protocol_gator { public static StringMessage APDH(String id, String cmd) { - return genStringMessage(cmdMap.get(CMD_TYPE.APDH), - new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APDH)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), + new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDSPLIT).append(cmd) .append(CMDEND).toString()); @@ -2472,7 +2440,7 @@ public class protocol_gator { if (!lang.contains("zh")) { language = 1; } - return genStringMessage("APTQ", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APTQ)) + return genStringMessage("APTQ", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(runtime.getLocationInstance().getMCC()) .append(CMDSPLIT).append(runtime.getLocationInstance().getMNC()) .append(CMDSPLIT).append(runtime.getLocationInstance().getLAC()) @@ -2607,7 +2575,7 @@ public class protocol_gator { */ //在UI逻辑中,只要有处理就都是已经阅读。所以不存在取消阅读的说法。 - return genStringMessage(cmdMap.get(protocol_gator.CMD_TYPE.AP94), new StringBuffer(CMDHEADER).append(cmdMap.get(protocol_gator.CMD_TYPE.AP94)) + return genStringMessage(cmdMap.get(protocol_gator.CMD_TYPE.AP14), new StringBuffer(CMDHEADER).append(cmdMap.get(protocol_gator.CMD_TYPE.AP14)) .append(CMDSPLIT).append(Runtime.PushtxtMsg_srv_index) .append(CMDSPLIT).append("1") .append(CMDEND).toString()); @@ -2616,7 +2584,7 @@ public class protocol_gator { public static StringMessage APAT(String id, String cmd) { - return genStringMessage("APAT", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APAT)) + return genStringMessage("APAT", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDSPLIT).append(cmd) .append(CMDEND).toString()); @@ -2673,15 +2641,15 @@ public class protocol_gator { public static StringMessage APCH(int charging) { - return genStringMessage(cmdMap.get(CMD_TYPE.APCH), - new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APCH)) + return genStringMessage(cmdMap.get(CMD_TYPE.AP14), + new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(charging) .append(CMDEND).toString()); } public static StringMessage APBT(String id, String cycle) { - return genStringMessage("APBT", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APBT)) + return genStringMessage("APBT", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDSPLIT).append(cycle) .append(CMDEND).toString()); @@ -2745,7 +2713,7 @@ public class protocol_gator { for (String it : runtime.bleInfo.btScanResult) { sb.append(CMDSPLIT).append(it); } - return genStringMessage("APBR", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APBR)) + return genStringMessage("APBR", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(runtime.IMEI()) .append(CMDSPLIT).append(TimeUtil.getSystemTimeyyyyMMddHHmmss()) .append(CMDSPLIT).append(sb.toString()) @@ -2757,7 +2725,7 @@ public class protocol_gator { } public static StringMessage APBS(String id, String cycle) { - return genStringMessage("APBS", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APBS)) + return genStringMessage("APBS", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDSPLIT).append(cycle) .append(CMDEND).toString()); @@ -2810,7 +2778,7 @@ public class protocol_gator { * 说明: 本消息适用所有终端 */ public static StringMessage APWL(String index, String[] phnumbs) { - return genStringMessage("APWL", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APWL)) + return genStringMessage("APWL", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(index) .append(CMDSPLIT).append(phnumbs[0]) .append(CMDSPLIT).append(phnumbs[1]) @@ -2915,7 +2883,7 @@ public class protocol_gator { public static StringMessage AP65(String id, String cy) { - return genStringMessage("AP65", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP65)) + return genStringMessage("AP65", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDSPLIT).append(cy) .append(CMDEND).toString()); @@ -2965,7 +2933,7 @@ public class protocol_gator { } public static StringMessage AP47(String id, String cycle) { - return genStringMessage("AP47", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP47)) + return genStringMessage("AP47", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP14)) .append(CMDSPLIT).append(id) .append(CMDSPLIT).append(cycle) .append(CMDEND).toString()); @@ -3018,237 +2986,240 @@ public class protocol_gator { if (Config.LOG_TOFILE) ICLogger.logToFile("APILog", " recv " + cmd); cmd = cmd.replace(" ", ""); switch (type) { - case BP00: //登录包 - handleBP00(mRuntime, cmd); - ICLogger.i("服务器收到登录包AP00"); + case AP03: //登录包 + handleAP03(mRuntime, cmd); + ICLogger.i("服务器收到登录包"); mConnection.DeliverCMDMessageToSystem("login", cmd);//通知下面线程状态变化 break; - case BP01: //gps定位包 + case AP14: //gps定位包 handleBP01(cmd); ICLogger.i("服务器收到定位AP01"); mConnection.DeliverCMDMessageToSystem("AP01", cmd);//通知下面线程状态变化 break; - case BP02:// wifi定位包 - handleBP02(cmd); - ICLogger.i("服务器收到定位AP02"); - mConnection.DeliverCMDMessageToSystem("AP02", cmd);//通知下面线程状态变化 - break; - case BP03: //心跳包 - handleBP03(cmd); - ICLogger.i("服务器收到心跳包AP03"); - mConnection.DeliverCMDMessageToSystem("heartbeat", cmd);//通知下面线程状态变化 - break; - - case BP07: - //收到发送的语音包 - handleBP07(cmd, mConnection); - break; - case BP10: - //报警包 - mConnection.DeliverCMDMessageToSystem("AP10", cmd);//通知下面线程状态变化 - break; - case BPBR: - mConnection.DeliverCMDMessageToSystem("APBR", cmd);//通知下面线程状态变化 - break; - case BPTM: - //校时命令 - handleBPTM(cmd); - ICLogger.i("服务器收到校时命令APTM"); - mConnection.DeliverCMDMessageToSystem("APTM", cmd);//通知下面线程状态变化 - break; - case BP85://设置闹钟 - handleBP85(cmd, mConnection, mRuntime); - ICLogger.i("收到服务器设置闹钟命令BP85"); - mConnection.DeliverCMDMessageToSystem("AP85", cmd);//通知下面线程状态变化 - break; - - case BP87: - handleBP87(cmd, mConnection, mRuntime); - ICLogger.i("收到服务器 QRCode uri BP87"); - break; - case BP33: - //设置工作模式 - handleBP33(mConnection, mRuntime, cmd); - mConnection.DeliverCMDMessageToSystem("setWorkMod", cmd);//通知下面线程状态变化 - - break; - case BP34: - //设置工作模式 - handleBP34(mConnection, mRuntime, cmd); - mConnection.DeliverCMDMessageToSystem("setWorkMod", cmd);//通知下面线程状态变化 - break; - case BP16: - //立即定位指令(长链接有效) - handleBP16(mConnection, mRuntime, cmd); - mConnection.DeliverCMDMessageToSystem("StartLocate", cmd);//通知下面线程状态变化 - break; - - case BP46: //立即拍照 - ICLogger.i("立即拍照!"); - handleBP46(cmd, mConnection, mRuntime); - break; - - case BP12: - //收到设置SOS号码 - handleBP12(mConnection, cmd, mRuntime); - ICLogger.i("收到服务器设置SOS号码命令BP12"); + case AP04://查询终端版本消息 + handleAP04(mRuntime,mConnection,cmd); break; - case BP14: - //收到设置白名单号码 - handleBP14(mConnection, cmd, mRuntime); - ICLogger.i("收到服务器设置白名单号码命令BP14"); - break; - case BPWL: - //收到设置白名单号码 - handleBPWL(mConnection, cmd, mRuntime); - ICLogger.i("收到服务器设置白名单号码命令BPWL"); - break; - case BP15: - handleBP15(cmd, mConnection, mRuntime); - ICLogger.i("收到服务器设置定位命令BP15"); - break; - case BP17: - //收到恢复出厂设置 - handleBP17(mConnection, cmd); - ICLogger.i("收到服务器恢复出厂设置命令BP17"); - mConnection.DeliverCMDMessageToSystem("FactoryReset", cmd);//通知下面线程状态变化 - break; - - case BP18: - //收到重启 - handleBP18(mConnection, cmd); - ICLogger.i("收到服务器重启命令BP18"); - mConnection.DeliverCMDMessageToSystem("Reboot", cmd);//通知下面线程状态变化 - break; - - case BP31: - //收到关机 - handleBP31(mConnection, cmd); - ICLogger.i("收到服务器关机命令BP31"); - mConnection.DeliverCMDMessageToSystem("poweroff", cmd);//通知下面线程状态变化 - break; - case BP40: - //服务器推送文本 - handleBP40(mConnection, mRuntime, cmd); - ICLogger.i("收到服务器推送文本消息"); - mConnection.DeliverCMDMessageToSystem("showTxt", cmd);//通知下面线程状态变化 - break; - - case BPXL: - handleBPXL(cmd, mConnection); - ICLogger.i("收到服务器心率检测命令"); - 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()) - HeartRateManager.getInstance().triggerPPGTest(FROM_SERVER); - break; - case BPJZ: - handleBPJZ(cmd, mConnection, mRuntime); - ICLogger.i("收到服务器血压校准命令"); - break; - case BPHT: - ICLogger.i("服务器收到上传的心率血压"); - mConnection.DeliverCMDMessageToSystem("APHT", cmd);//通知下面线程状态变化 - break; - case BP84: - handleBP84(cmd, mConnection); - ICLogger.i("收到服务器白名单命令"); - break; - - case BP86: - //心率周期 - handleBP86(cmd, mConnection, mRuntime); - mConnection.DeliverCMDMessageToSystem("AP86", cmd);//通知下面线程状态变化 - - break; - case BP68: //绑定解绑 - handleBP68(cmd, mConnection, mRuntime); - break; - case BP88: - //收到查找设备消息 - handleBP88(cmd, mConnection); - mConnection.DeliverCMDMessageToSystem("findDev", cmd);//通知下面线程状态变化 - break; - case BP89: - //心率/血压阀值 - handleBP89(cmd, mConnection); - mConnection.DeliverCMDMessageToSystem("AP89", cmd);//通知下面线程状态变化 - break; - - case BPTE: //设置测试体温 - handleBPTE(cmd, mConnection, mRuntime); - mConnection.DeliverCMDMessageToSystem("APTE", cmd);//通知下面线程状态变化 - break; - case BPTP: - handleBPTP(); - mConnection.DeliverCMDMessageToSystem("APTP", cmd);//通知下面线程状态变化 - break; - case BPHP: - handleBPHP(); - mConnection.DeliverCMDMessageToSystem("APHP", cmd);//通知下面线程状态变化 - break; - case BPX1://设置 心率血压血氧修正值 - handleBPX1(cmd, mConnection, mRuntime); - ICLogger.i("收到服务器设置 心率血压血氧修正值BPX1"); - mConnection.DeliverCMDMessageToSystem("APX1", cmd);//通知下面线程状态变化 - break; - - case BPS4: //提醒设置(时间段) 主要为久坐设置提醒时长。 - handleBPS4(cmd, mConnection, mRuntime); - ICLogger.i("收到 提醒设置(时间段)"); - mConnection.DeliverCMDMessageToSystem("APS4", cmd);//通知下面线程状态变化 - break; - case BPDE: - handleBPDE(mConnection, cmd, mRuntime); - ICLogger.i(" 收到 进出围栏通知!"); - mConnection.DeliverCMDMessageToSystem("APDE", cmd);//通知下面线程状态变化 - break; - - case BPTU: - handleBPTU(cmd, mConnection); - ICLogger.i("收到服务器 图片语音 消息 BPTU"); - // mConnection.DeliverCMDMessageToSystem("APTU", "");//通知下面线程状态变化 - break; - case BPDG: - handleBPDG(mConnection, cmd, mRuntime); - ICLogger.i(" 收到 体温阈值设置!"); - mConnection.DeliverCMDMessageToSystem("APDG", cmd);//通知下面线程状态变化 - break; - case BPSL: - ICLogger.i("睡眠数据上传完毕!"); - mConnection.DeliverCMDMessageToSystem("APSL", cmd);//通知下面线程状态变化 - break; - - case BPDH: - ICLogger.i("聆听"); - handleBPDH(mConnection, mRuntime, cmd); - break; - - case BPTQ: //天气下发 - handleBPTQ(mConnection, mRuntime, cmd); - break; - case BPAT://剪断开关设定 - handleBPAT(mConnection, mRuntime, cmd); - break; - - case BPBT://蓝牙扫描设置 - handleBPBT(mConnection, mRuntime, cmd); - break; - case BPBS://蓝牙扫描设置Majorlist - handleBPBS(mConnection, mRuntime, cmd); - break; - - case BP65://声音设置 - handleBP65(mConnection, mRuntime, cmd); - break; - case BP47://震动设置 - handleBP47(mConnection, mRuntime, cmd); - break; - +// case AP14:// wifi定位包 +// handleBP02(cmd); +// ICLogger.i("服务器收到定位AP02"); +// mConnection.DeliverCMDMessageToSystem("AP02", cmd);//通知下面线程状态变化 +// break; +// case AP14: //心跳包 +// handleBP03(cmd); +// ICLogger.i("服务器收到心跳包AP03"); +// mConnection.DeliverCMDMessageToSystem("heartbeat", cmd);//通知下面线程状态变化 +// break; +// +// case AP14: +// //收到发送的语音包 +// handleBP07(cmd, mConnection); +// break; +// case AP14: +// //报警包 +// mConnection.DeliverCMDMessageToSystem("AP10", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// mConnection.DeliverCMDMessageToSystem("APBR", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// //校时命令 +// handleBPTM(cmd); +// ICLogger.i("服务器收到校时命令APTM"); +// mConnection.DeliverCMDMessageToSystem("APTM", cmd);//通知下面线程状态变化 +// break; +// case AP14://设置闹钟 +// handleBP85(cmd, mConnection, mRuntime); +// ICLogger.i("收到服务器设置闹钟命令BP85"); +// mConnection.DeliverCMDMessageToSystem("AP85", cmd);//通知下面线程状态变化 +// break; +// +// case AP14: +// handleBP87(cmd, mConnection, mRuntime); +// ICLogger.i("收到服务器 QRCode uri BP87"); +// break; +// case BP33: +// //设置工作模式 +// handleBP33(mConnection, mRuntime, cmd); +// mConnection.DeliverCMDMessageToSystem("setWorkMod", cmd);//通知下面线程状态变化 +// +// break; +// case BP34: +// //设置工作模式 +// handleBP34(mConnection, mRuntime, cmd); +// mConnection.DeliverCMDMessageToSystem("setWorkMod", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// //立即定位指令(长链接有效) +// handleBP16(mConnection, mRuntime, cmd); +// mConnection.DeliverCMDMessageToSystem("StartLocate", cmd);//通知下面线程状态变化 +// break; +// +// case AP14: //立即拍照 +// ICLogger.i("立即拍照!"); +// handleBP46(cmd, mConnection, mRuntime); +// break; +// +// case AP14: +// //收到设置SOS号码 +// handleBP12(mConnection, cmd, mRuntime); +// ICLogger.i("收到服务器设置SOS号码命令BP12"); +// break; +// case AP14: +// //收到设置白名单号码 +// handleBP14(mConnection, cmd, mRuntime); +// ICLogger.i("收到服务器设置白名单号码命令BP14"); +// break; +// case AP14: +// //收到设置白名单号码 +// handleBPWL(mConnection, cmd, mRuntime); +// ICLogger.i("收到服务器设置白名单号码命令BPWL"); +// break; +// case AP14: +// handleBP15(cmd, mConnection, mRuntime); +// ICLogger.i("收到服务器设置定位命令BP15"); +// break; +// case AP14: +// //收到恢复出厂设置 +// handleBP17(mConnection, cmd); +// ICLogger.i("收到服务器恢复出厂设置命令BP17"); +// mConnection.DeliverCMDMessageToSystem("FactoryReset", cmd);//通知下面线程状态变化 +// break; +// +// case AP14: +// //收到重启 +// handleBP18(mConnection, cmd); +// ICLogger.i("收到服务器重启命令BP18"); +// mConnection.DeliverCMDMessageToSystem("Reboot", cmd);//通知下面线程状态变化 +// break; +// +// case BP31: +// //收到关机 +// handleBP31(mConnection, cmd); +// ICLogger.i("收到服务器关机命令BP31"); +// mConnection.DeliverCMDMessageToSystem("poweroff", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// //服务器推送文本 +// handleBP40(mConnection, mRuntime, cmd); +// ICLogger.i("收到服务器推送文本消息"); +// mConnection.DeliverCMDMessageToSystem("showTxt", cmd);//通知下面线程状态变化 +// break; +// +// case AP14: +// handleBPXL(cmd, mConnection); +// ICLogger.i("收到服务器心率检测命令"); +// if (mRuntime.check_stat_do_ppg_test()) +// HeartRateManager.getInstance().triggerPPGTest(FROM_SERVER); +// break; +// case AP14: +// handleBPXY(cmd, mConnection); +// ICLogger.i("收到服务器血压检测命令"); +// if (mRuntime.check_stat_do_ppg_test()) +// HeartRateManager.getInstance().triggerPPGTest(FROM_SERVER); +// break; +// case AP14: +// handleBPJZ(cmd, mConnection, mRuntime); +// ICLogger.i("收到服务器血压校准命令"); +// break; +// case AP14: +// ICLogger.i("服务器收到上传的心率血压"); +// mConnection.DeliverCMDMessageToSystem("APHT", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// handleBP84(cmd, mConnection); +// ICLogger.i("收到服务器白名单命令"); +// break; +// +// case AP14: +// //心率周期 +// handleBP86(cmd, mConnection, mRuntime); +// mConnection.DeliverCMDMessageToSystem("AP86", cmd);//通知下面线程状态变化 +// +// break; +// case AP14: //绑定解绑 +// handleBP68(cmd, mConnection, mRuntime); +// break; +// case AP14: +// //收到查找设备消息 +// handleBP88(cmd, mConnection); +// mConnection.DeliverCMDMessageToSystem("findDev", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// //心率/血压阀值 +// handleBP89(cmd, mConnection); +// mConnection.DeliverCMDMessageToSystem("AP89", cmd);//通知下面线程状态变化 +// break; +// +// case AP14: //设置测试体温 +// handleBPTE(cmd, mConnection, mRuntime); +// mConnection.DeliverCMDMessageToSystem("APTE", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// handleBPTP(); +// mConnection.DeliverCMDMessageToSystem("APTP", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// handleBPHP(); +// mConnection.DeliverCMDMessageToSystem("APHP", cmd);//通知下面线程状态变化 +// break; +// case AP14://设置 心率血压血氧修正值 +// handleBPX1(cmd, mConnection, mRuntime); +// ICLogger.i("收到服务器设置 心率血压血氧修正值BPX1"); +// mConnection.DeliverCMDMessageToSystem("APX1", cmd);//通知下面线程状态变化 +// break; +// +// case AP14: //提醒设置(时间段) 主要为久坐设置提醒时长。 +// handleBPS4(cmd, mConnection, mRuntime); +// ICLogger.i("收到 提醒设置(时间段)"); +// mConnection.DeliverCMDMessageToSystem("APS4", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// handleBPDE(mConnection, cmd, mRuntime); +// ICLogger.i(" 收到 进出围栏通知!"); +// mConnection.DeliverCMDMessageToSystem("APDE", cmd);//通知下面线程状态变化 +// break; +// +// case AP14: +// handleBPTU(cmd, mConnection); +// ICLogger.i("收到服务器 图片语音 消息 BPTU"); +// // mConnection.DeliverCMDMessageToSystem("APTU", "");//通知下面线程状态变化 +// break; +// case AP14: +// handleBPDG(mConnection, cmd, mRuntime); +// ICLogger.i(" 收到 体温阈值设置!"); +// mConnection.DeliverCMDMessageToSystem("APDG", cmd);//通知下面线程状态变化 +// break; +// case AP14: +// ICLogger.i("睡眠数据上传完毕!"); +// mConnection.DeliverCMDMessageToSystem("APSL", cmd);//通知下面线程状态变化 +// break; +// +// case AP14: +// ICLogger.i("聆听"); +// handleBPDH(mConnection, mRuntime, cmd); +// break; +// +// case AP14: //天气下发 +// handleBPTQ(mConnection, mRuntime, cmd); +// break; +// case AP14://剪断开关设定 +// handleBPAT(mConnection, mRuntime, cmd); +// break; +// +// case AP14://蓝牙扫描设置 +// handleBPBT(mConnection, mRuntime, cmd); +// break; +// case AP14://蓝牙扫描设置Majorlist +// handleBPBS(mConnection, mRuntime, cmd); +// break; +// +// case AP14://声音设置 +// handleBP65(mConnection, mRuntime, cmd); +// break; +// case AP14://震动设置 +// handleBP47(mConnection, mRuntime, cmd); +// break; +// } @@ -3264,11 +3235,11 @@ public class protocol_gator { ICLogger.i("handleCmd " + type.name() + " " + cmd + " bytelen=" + bytes.length); if (Config.LOG_TOFILE) ICLogger.logToFile("APILog", " recv " + new String(bytes)); switch (type) { - case BP28: - handleBP28(mConnection, cmd, mRuntime, bytes); - ICLogger.i("收到服务器语音BP28"); -// mConnection.DeliverCMDMessageToSystem("BP28", "");//通知下面线程状态变化 - break; +// case BP28: +// handleBP28(mConnection, cmd, mRuntime, bytes); +// ICLogger.i("收到服务器语音BP28"); +//// mConnection.DeliverCMDMessageToSystem("BP28", "");//通知下面线程状态变化 +// break; } return ret; } diff --git a/local.properties b/local.properties index 0cdc2a6c..38ddae0c 100644 --- a/local.properties +++ b/local.properties @@ -4,5 +4,5 @@ # Location of the SDK. This is only used by Gradle. # For customization when using a Version Control System, please read the # header note. -#Sat Jun 26 13:03:49 CST 2021 -sdk.dir=C\:\\Users\\incar\\AppData\\Local\\Android\\Sdk +#Sun Jun 27 19:54:51 CST 2021 +sdk.dir=E\:\\Android\\sdk