From: TrillGates Date: Wed, 28 Apr 2021 02:53:57 +0000 (+0800) Subject: fixed some response handler of anan protocol. X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=a7994a423e2ca144541963f057a36cd5d49e6118;p=protocol_srv.git fixed some response handler of anan protocol. --- diff --git a/app/src/main/java/com/enqualcomm/support/LocationClient.java b/app/src/main/java/com/enqualcomm/support/LocationClient.java index 6bf6023b..46d14ce0 100644 --- a/app/src/main/java/com/enqualcomm/support/LocationClient.java +++ b/app/src/main/java/com/enqualcomm/support/LocationClient.java @@ -9,6 +9,7 @@ import android.os.HandlerThread; import android.os.Message; import android.os.PowerManager; import android.os.SystemClock; +import android.text.TextUtils; import com.enqualcomm.support.adapter.BTHelper; import com.enqualcomm.support.adapter.LBSHelper; @@ -192,12 +193,12 @@ public class LocationClient { } ICLogger.i("Bt Dev Is in Area " + runtime.bleInfo.is_in_area); - if (scanBLEOnly == true) { + if (scanBLEOnly) { //只扫描蓝牙,不做定位 - if (runtime.bleInfo.is_in_area == false) { + if (!runtime.bleInfo.is_in_area) { runtime.updateFZDDevStatusEscape(true); ICLogger.i("BT 不在区域内"); - if (runtime.bleInfo.last_is_in_area == true) { + if (runtime.bleInfo.last_is_in_area) { //只有上一次在区域内,这次出区域才需要报警 ICLogger.i("BT 不在区域内,且上次在区域内,报警!"); //如果需要报警定位,则强制进行sos定位,不能通过triggerSOS,因为函数中调用了BLEScan会造成循环调用 @@ -207,7 +208,7 @@ public class LocationClient { } else { ICLogger.i("BT 在区域内!"); runtime.updateFZDDevStatusEscape(false); - if (runtime.bleInfo.last_is_in_area == false) { + if (!runtime.bleInfo.last_is_in_area) { //上一次不在区域内,这次进区域要报警 ICLogger.i("BT 进入区域内,且上次不在区域内,报警!"); if (!Config.noBLE_RelaseEscapeAlarm) { @@ -268,12 +269,13 @@ public class LocationClient { //已经通过蓝牙定位,则清除 forceLocation=0 forceLocation = 0; startNomalLocation = false; //蓝牙定位,直接发GPS坐标 - StringMessage AP01_CMD = protocolAPIHelper.getGPSLocationMSG(runtime); - DeliverMessage(AP01_CMD); + if (!TextUtils.isEmpty(runtime.getWifiInfo())) { + StringMessage AP01_CMD = protocolAPIHelper.getGPSLocationMSG(runtime); + DeliverMessage(AP01_CMD); + } } } } - //处理过此次数据后,把当前状态赋值给上次检测状态 runtime.bleInfo.last_is_in_area = runtime.bleInfo.is_in_area; //扫描结束就清掉scanBLEOnly,保证下次不会被误操作。 @@ -551,13 +553,13 @@ public class LocationClient { btHelper.scanBLE(); } } else { - // Util.mSleep(1000); + // Util.mSleep(1000); StringMessage waningmsg = protocolAPIHelper.getWarningMSG(runtime); - if(Config.sendSOSAtOnce){ + if (Config.sendSOSAtOnce) { //客户ZSH因网络较差,经常缓存过多消息造成无法及时发送 //要求直接发送SOS信息,不做缓存。 connection.send(waningmsg); - }else { + } else { DeliverMessage(waningmsg); } } @@ -654,8 +656,10 @@ public class LocationClient { if (startNomalLocation = true) { startNomalLocation = false; if (gps_ok) { - StringMessage AP01_CMD = protocolAPIHelper.getGPSLocationMSG(runtime); - DeliverMessage(AP01_CMD); + if (!TextUtils.isEmpty(runtime.getWifiInfo())) { + StringMessage AP01_CMD = protocolAPIHelper.getGPSLocationMSG(runtime); + DeliverMessage(AP01_CMD); + } } else { StringMessage AP02_CMD = protocolAPIHelper.getLBSLocationMSG(runtime); DeliverMessage(AP02_CMD); @@ -859,7 +863,7 @@ public class LocationClient { public PowerManager.WakeLock getLocationWakeLock() { PowerManager.WakeLock wakeLock = ((PowerManager) (runtime.getContextProxy()) .context.getSystemService(Context.POWER_SERVICE)).newWakeLock( - PowerManager.PARTIAL_WAKE_LOCK, this.getClass().getSimpleName()); + PowerManager.PARTIAL_WAKE_LOCK, this.getClass().getSimpleName()); wakeLock.acquire(1000L); return wakeLock; } diff --git a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java index a28b3154..63b33d9e 100644 --- a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java +++ b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java @@ -1,5 +1,7 @@ package com.ic.protocols; +import android.text.TextUtils; + import com.enqualcomm.support.Config; import com.enqualcomm.support.CoreService; import com.enqualcomm.support.bean.Runtime; @@ -258,6 +260,9 @@ public class protocolAPIHelper { ret = protocol_mqtt.AL(runtime); break; case PROTOCOL_ANAN: + if (TextUtils.isEmpty(runtime.getWifiInfo())) { + return null; + } ret = protocol_anan.AP10(runtime); break; } @@ -361,6 +366,9 @@ public class protocolAPIHelper { case Config.PROTOCOL_MQTT: ret = protocol_mqtt.UD(runtime); break; + case PROTOCOL_ANAN: + ret = protocol_anan.AP02(runtime); + break; } return ret; } @@ -592,7 +600,7 @@ public class protocolAPIHelper { ret = null; break; case PROTOCOL_ANAN: - ret = protocol_anan.APTQ(runtime); + //ret = protocol_anan.APTQ(runtime); break; } return ret; diff --git a/app/src/main/java/com/ic/protocols/protocol_anan.java b/app/src/main/java/com/ic/protocols/protocol_anan.java index 0b565d87..de9685a0 100644 --- a/app/src/main/java/com/ic/protocols/protocol_anan.java +++ b/app/src/main/java/com/ic/protocols/protocol_anan.java @@ -13,8 +13,10 @@ import android.net.Uri; import android.os.Environment; import android.support.v4.app.ActivityCompat; import android.telephony.TelephonyManager; +import android.text.TextUtils; import com.enqualcomm.support.Config; +import com.enqualcomm.support.Constants; import com.enqualcomm.support.CoreService; import com.enqualcomm.support.R; import com.enqualcomm.support.bean.Alarm; @@ -36,6 +38,7 @@ import com.enqualcomm.support.utils.Util; import java.io.File; import java.util.ArrayList; +import java.util.Date; import java.util.HashMap; import java.util.Locale; @@ -65,7 +68,7 @@ public class protocol_anan { public protocol_anan(Connection connect, Runtime runtime) { mConnection = connect; mRuntime = runtime; - getPhoneStatus(); + getPhoneStatus(runtime); //注册佩戴状态改变的监听 registerWearStateReceiver(); } @@ -75,6 +78,46 @@ public class protocol_anan { public static final int STATE_ANTI_ON = 0; public static final int STATE_ANTI_OFF = 1; + + /*LBS+WiFi混合定位*/ + public static StringMessage AP02(Runtime ds) { + //示例数据:IWAP02, + // 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# +// IW标识符 +// AP02:命令字 +// zh_cn: 语言标志 +// 0:回复标识,为0时不回复地址,为 1 时,服务器回复地址信息 +// 7: 表示共有7组基站 +// 460: MCC 国家码 +// 0: MNC运营商代码 +// 9520|3671|10: LAC|CID|dbm表示一组基站信息,后面数量需和基站组数地应 10:dbm为信号强度多基站信号强度建议从高到低排列后上传,信号强度转正数:150 – abs(dbm) +// 4: 表示WIFI组数, +// 1|D8-24-BD-79-FA-1F|59: ssid|mac地址|信号强度,信号强度转正数:150 – abs(信号强度) + + 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.AP02), + new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP02)).append(CMDSPLIT) + .append(ds.getLanguage()).append(CMDSPLIT) + .append(0).append(CMDSPLIT) //为0时不回复地址 + .append(ds.getLBSMultiStationData()).append(CMDSPLIT) //基站信息数据 + .append(apsum).append(TextUtils.isEmpty(wifiInfo) ? "" : CMDSPLIT).append(TextUtils.isEmpty(wifiInfo) ? "" : wifiInfo) + .append(CMDEND).toString()); //wifi信息数据 + } + private void registerWearStateReceiver() { IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction("com.ic.ACTION_ANTIOFF"); @@ -184,6 +227,7 @@ public class protocol_anan { BP15/*GPRS定位数据上传时间间隔*/, BP68/*设置绑定状态*/, BP84/* 白名单开关*/, + BPTQ/* 天气数据来了*/, BPFD/*交好友响应*/, BP07/*语音上行响应*/, BP95/*语音上行给好友响应*/, @@ -203,7 +247,14 @@ public class protocol_anan { AP32/*拨号上行*/, APSW/*定位开关上行*/, AP98/*计步目标设置上行*/, - BPHT/*心率血压上传结果*/ + AP26, + BPHT/*心率血压上传结果*/, + BP10/*天气的回应*/, + AP02, + BP02, + BP01/*GPS的*/, + BP00/*登录包*/, + BP03/*心跳*/ } private final static HashMap cmdMap; @@ -243,11 +294,14 @@ public class protocol_anan { cmdMap.put(CMD_TYPE.BPXY, "BPXY"); cmdMap.put(CMD_TYPE.BP98, "BP98"); cmdMap.put(CMD_TYPE.BP84, "BP84"); + cmdMap.put(CMD_TYPE.BPTQ, "BPTQ"); cmdMap.put(CMD_TYPE.BPFD, "BPFD"); cmdMap.put(CMD_TYPE.BP87, "BP87"); cmdMap.put(CMD_TYPE.BPNT, "BPNT"); cmdMap.put(CMD_TYPE.BP88, "BP88"); cmdMap.put(CMD_TYPE.BP99, "BP99"); + cmdMap.put(CMD_TYPE.AP02, "AP02"); + cmdMap.put(CMD_TYPE.BP02, "BP02"); cmdMap.put(CMD_TYPE.BPSW, "BPSW"); cmdMap.put(CMD_TYPE.BP95, "BP95"); cmdMap.put(CMD_TYPE.BP28, "BP28"); @@ -265,6 +319,9 @@ public class protocol_anan { cmdMap.put(CMD_TYPE.APXL, "APXL"); cmdMap.put(CMD_TYPE.APSW, "APSW"); cmdMap.put(CMD_TYPE.AP98, "AP98"); + cmdMap.put(CMD_TYPE.BP00, "BP00"); + cmdMap.put(CMD_TYPE.AP26, "AP26"); + cmdMap.put(CMD_TYPE.BP03, "BP03"); } @@ -312,12 +369,19 @@ public class protocol_anan { /*登录*/ public static StringMessage AP00(Runtime runTime) { + if (TextUtils.isEmpty(runTime.getIccid()) || TextUtils.isEmpty(runTime.getImsi())) { + String phoneStatus = getPhoneStatus(runTime); + ICLogger.d("phoneStatus == > " + phoneStatus); + return null; + } //示例数据:IWAP00102002020001871,898600A7189443197156,9460077731997156# return genStringMessage(cmdMap.get(CMD_TYPE.AP00), new StringBuffer(CMDHEADER).append( cmdMap.get(CMD_TYPE.AP00) ).append(runTime.IMEI()) + .append(CMDSPLIT) .append(runTime.getIccid()) + .append(CMDSPLIT) .append(runTime.getImsi()) .append(CMDEND).toString()); } @@ -353,7 +417,7 @@ public class protocol_anan { if (!lang.contains("zh")) { language = 1; } - return genStringMessage("APTQ", new StringBuffer(CMDHEADER).append(cmdMap.get(protocol_ic.CMD_TYPE.APTQ)) + return genStringMessage("APTQ", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APTQ)) .append(CMDSPLIT).append(runtime.getLocationInstance().getMCC()) .append(CMDSPLIT).append(runtime.getLocationInstance().getMNC()) .append(CMDSPLIT).append(runtime.getLocationInstance().getLAC()) @@ -386,12 +450,13 @@ public class protocol_anan { * zh-cn:设备语言 * 00:第一个0:是否需要回复地址信息,0:不回复,1回复. */ + String wifiInfo = ds.getWifiInfo(); return genStringMessage(cmdMap.get(CMD_TYPE.AP10), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP10)) .append(TimeUtil.getShortDate()) .append(ds.getGPSData()) - .append(TimeUtil.getShortTime()) .append(ds.getGPSHeading()) + .append(TimeUtil.getShortTime()) .append(String.format("%03d", abs(ds.getSignalStrength()))) .append(ds.getGPSLocationStarNums()) .append(ds.getBattery()).append("0") @@ -400,9 +465,8 @@ public class protocol_anan { .append(ds.getLBSData()).append(CMDSPLIT) .append(ds.getAlarmType()).append(CMDSPLIT) .append(ds.getLanguage()).append(CMDSPLIT) - .append("00").append(CMDSPLIT) //不回复地址 - .append(ds.getWifiInfo()).append(CMDEND).toString()); - + .append("00").append(TextUtils.isEmpty(wifiInfo) ? "" : CMDSPLIT) //不回复地址 + .append(TextUtils.isEmpty(wifiInfo) ? "" : wifiInfo.replace("AP","HOME")).append(CMDEND).toString()); } public static StringMessage AP03(Runtime ds) { @@ -428,6 +492,7 @@ public class protocol_anan { // 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,# + String wifiInfo = ds.getWifiInfo(); return genStringMessage(cmdMap.get(CMD_TYPE.AP01), new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP01)) .append(TimeUtil.getShortDate()) @@ -439,8 +504,8 @@ public class protocol_anan { .append(ds.getBattery()).append("0") .append(ds.getProtection()) .append(ds.getWorkModeStr()).append(CMDSPLIT) - .append(ds.getLBSData()).append(CMDSPLIT) - .append(ds.getWifiInfo()).append(CMDEND).toString()); + .append(ds.getLBSData()).append(TextUtils.isEmpty(wifiInfo) ? "" : CMDSPLIT) + .append(TextUtils.isEmpty(wifiInfo) ? "" : wifiInfo).append(CMDEND).toString()); } @@ -454,10 +519,16 @@ public class protocol_anan { .append(runtime.getHRS().getBPL()/*收缩压*/) .append(CMDSPLIT) .append(runtime.getHRS().getBPL()/*舒张压*/) + .append(CMDSPLIT) + .append(0.0/*腕部温度*/) + .append(CMDSPLIT) + .append(0.0/*温度*/) + .append(CMDSPLIT) + .append(0/*采集编号*/) .append(CMDEND).toString()); } - public String getPhoneStatus() { + public static String getPhoneStatus(Runtime mRuntime) { TelephonyManager tm = (TelephonyManager) mRuntime .getContextProxy().context.getSystemService(Context.TELEPHONY_SERVICE); String str = ""; @@ -612,6 +683,9 @@ public class protocol_anan { handleBP84(cmd, mConnection); ICLogger.i("收到服务器白名单命令"); break; + case BPTQ: //天气下发 + handleBPTQ(mConnection, mRuntime, cmd); + break; case BP07: //收到发送的语音包 handleBP07(cmd, mConnection); @@ -632,13 +706,215 @@ public class protocol_anan { ICLogger.d("收到计步目标指令..." + cmd); handleBP98(cmd, mConnection); break; - case BPHT: - ICLogger.d("服务器收到心率血压上传..."); - break; case BP45: ICLogger.d("收到静音开关指令--> " + cmd); handleBP45(cmd, mConnection); break; + case BP26: + ICLogger.d("收到了上课时间段静音的指令"); + handleBP26(cmd, mConnection); + break; + case BP10: + //报警包 + ICLogger.d("服务器收到报警包.."); + mConnection.DeliverCMDMessageToSystem("AP10", cmd);//通知下面线程服务器收到指令 + break; + case BP01: //gps定位包 + ICLogger.i("服务器收到定位AP01"); + mConnection.DeliverCMDMessageToSystem("AP01", cmd);//通知下面线程服务器收到指令 + break; + case BPHT: + ICLogger.i("服务器收到上传的心率血压APHT"); + mConnection.DeliverCMDMessageToSystem("APHT", cmd);//通知下面线程服务器收到指令 + break; + case BP02:// wifi定位包 + ICLogger.i("服务器收到定位AP02"); + mConnection.DeliverCMDMessageToSystem("AP02", cmd);//通知下面线程服务器收到指令 + break; + case BP00: //登录包 + handleBP00(mRuntime, cmd); + ICLogger.i("服务器收到登录包AP00"); + mConnection.DeliverCMDMessageToSystem("login", cmd);//通知下面线程状态变化 + break; + case BP03: //心跳包 + ICLogger.i("服务器收到心跳包AP03"); + mConnection.DeliverCMDMessageToSystem("heartbeat", cmd);//通知下面线程状态变化 + break; + } + } + + + public void handleBPTQ(Connection connection, Runtime runtime, String cmd) { + /*** + * + * IWBPTQ,20-10-11,19:32:02,6674,32,27,22,30,20-10-12,19:32:02,6674,32,27,22,30,20-10-13,19:32:02,6674,32,27,22,30,53575C71533A + * IWBPTQ, 16-09-24,11:00:00,b6e0d4c6,2,-5,-12,22,16-09-25,11:00:00,b6e0d4c6,2,-5,-12,22,16-09-26,11:00:00,b6e0d4c6,2,-5,-12,22,316df15733# + * 年-月-日,时:分:秒,天气描述,天气编号,当前温度,最低温,最高温,年-月-日,时:分:秒,天气描述,天气编号,当前温度,最低温,最高温,年-月-日,时:分:秒,天气描述,天气编号,当前温度,最低温,最高温,城市名 + * 注:天气描述用Unicode编码,城市名使用Unicode编码, 第一组为当天,后2组依次为后续2天天气 + * 如天气编号及描述对应如下(天气描述不需要发送括号内的白天晚上) + * 0:龙卷风 + * 1:热带风暴 + * 2:飓风 + * 3:严重的雷暴 + * 4:雷暴 + * 5:混合雨雪 + * 6:混合降雨和冰雹 + * 7:混合雪和雨夹雪 + * 8:冻结小雨 + * 9:小雨 + * 10:冻雨 + * 11:阵雨 + * 12:阵雨 + * 13:雪飘雪 + * 14:小雪阵雨 + * 15:吹雪 + * 16:雪 + * 17:冰雹 + * 18:雨夹雪 + * 19:尘埃 + * 20:雾 + * 21:霾 + * 22:黑烟 + * 23:大风 + * 24:风 + * 25:低温 + * 26:多云 + * 27:多云(晚上) + * 28:多云(白天) + * 29:局部多云(晚上) + * 30:局部多云(天) + * 31:清爽(晚) + * 32:晴天 + * 33:晴朗(晚) + * 34:晴朗(天) + * 35:混合雨和冰雹 + * 36:热 + * 37:局部地区性雷暴 + * 38:零星雷暴 + * 39:零星雷暴 + * 40:零星阵雨 + * 41:大雪 + * 42:零星阵雪 + * 43:大雪 + * 44:多云 + * 45:雷阵雨 + * 46:阵雪 + * 47:局部雷阵雨 + */ + + ICLogger.d("BPTQ " + cmd); + String[] cmdlist = cmd.split(CMDSPLIT); + if (cmdlist.length == 23) { + + StringBuilder sb = new StringBuilder(); + StringBuilder msg = new StringBuilder(); + for (int i = 0; i < 3; i++) { + String DayTime = cmdlist[1 + i * 7] + " " + cmdlist[2 + i * 7]; + String date = "20" + cmdlist[1 + i * 7].trim(); + String weather_name = Util.decodeUnicode2Utf8(cmdlist[3 + i * 7].trim()); + String weather_id = cmdlist[4 + i * 7]; + String temp_current = cmdlist[5 + i * 7]; + String temp_high = cmdlist[6 + i * 7]; + String temp_low = cmdlist[7 + i * 7]; + + sb.append(" " + DayTime); + sb.append(",天气:" + weather_name); + sb.append(",ID " + weather_id); + sb.append(",当前温度 " + temp_current); + sb.append(",最高温度 " + temp_high); + sb.append(",最低温度 " + temp_low); + sb.append("\n"); + + msg.append(date); + msg.append("," + weather_name); + msg.append("," + weather_id); + msg.append("," + temp_current); + msg.append("," + temp_high); + msg.append("," + temp_low); + msg.append(";"); + } + String City = Util.decodeUnicode2Utf8(cmdlist[22]); + + ICLogger.i(City + " \n" + sb.toString()); + + msg.insert(0, City + ";"); + String weatherstr = msg.toString(); + if (weatherstr.endsWith(";")) { + weatherstr = weatherstr.substring(0, weatherstr.lastIndexOf(";")); + } + Intent intent = new Intent(Constants.ACTION_WEATHER_RECEIVED); + intent.putExtra(Constants.KEY_Weather, weatherstr); + ICLogger.i("send Broadcast " + Constants.ACTION_WEATHER_RECEIVED + "\n" + weatherstr + "\n"); + CoreService.getInstance().sendBroadcast(intent); + + } else { + ICLogger.i(" BPTQ Format error!"); + } + } + + + //处理 登录 BP00 + public void handleBP00(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) { + ICLogger.d("handleBP00 Set Datetime " + msg[1]); + ICLogger.d("handleBP00 Set TimeZone " + msg[2]); + + try { + Date datetime = TimeUtil.parseDatetiime(msg[1]); + int timezone = Integer.parseInt(msg[2]); + if (datetime != null) { + ICLogger.i("===" + TimeUtil.getDefaultTimeZone()); + TimeUtil.setTimeZone(runtime.getContextProxy().context, timezone); + + ICLogger.i("===" + TimeUtil.getDefaultTimeZone()); + TimeUtil.setSysDateTime(runtime.getContextProxy().context, datetime, timezone, true); + ICLogger.i("===" + TimeUtil.getDefaultTimeZone()); + + } +// Set Datetime 20200505112734 +// Set TimeZone 8 + } catch (Exception e) { + ICLogger.e(e.getMessage(), e); + } + } else { + ICLogger.d("handleBP00 format Error"); + } + } + + + /** + * 这个指令有点特殊,做协议的有点强行解释,不承认应用的APP做错了。那就按这个功能来吧。 + * 这里本意是上课时间段静音,所以这个就做成静音了。其实是有静音的开关接口的。 + * + * @param cmd + * @param mConnection + */ + private void handleBP26(String cmd, Connection mConnection) { + String[] split = cmd.split(CMD_SPLIT); + //IWBP26,353456789012345,080835,1,2,123|0900@1145,456|1300@1600 + try { + //1为开,0 为关 + //修改情景模式 + AudioManager audioManager = + (AudioManager) mRuntime.getContextProxy() + .context.getSystemService(Context.AUDIO_SERVICE); + String trigger = split[3]; + ICLogger.d("trigger == > " + trigger); + if ("1".equals(trigger)) { + ProfileManager.ringModel(audioManager); + } else { + ProfileManager.ringAndVibrate(audioManager); + } + //回复服务器 +// mConnection.send( +// genStringMessage(cmdMap.get(CMD_TYPE.AP26),) +// ); + } catch (Exception e) { + e.printStackTrace(); } }