import com.enqualcomm.support.Config;
import com.enqualcomm.support.Constants;
import com.enqualcomm.support.CoreService;
+import com.enqualcomm.support.LocationClient;
import com.enqualcomm.support.R;
import com.enqualcomm.support.bean.Alarm;
import com.enqualcomm.support.bean.Contact;
BP65,//设置音量
AP47,
BP47,//设置震动
+ BPMC,//专门控制skipmovecheck
+ APMC,//
UNKNOWN_CMD,
}
cmdMap.put(CMD_TYPE.BPCH, "BPCH");
cmdMap.put(CMD_TYPE.APBR, "APBR");
cmdMap.put(CMD_TYPE.BPBR, "BPBR");
+ cmdMap.put(CMD_TYPE.BPMC, "BPMC");
+ cmdMap.put(CMD_TYPE.APMC, "APMC");
/* 服务器发起*/
cmdMap.put(CMD_TYPE.AP12, "AP12");
cmdMap.put(CMD_TYPE.BP12, "BP12");
case AP99://电话监听:
handleAP99(mConnection, mRuntime, cmd);
break;
-
+ case BPMC:
+ ICLogger.d("收到服务器下发的修改skipmovecheck");
+ handleBPMC(cmd);
+ break;
}
-
return ret;
+ }
+
+
+ private void handleBPMC(String cmd) {
+ //指令,IMEI,流水,值:0,1,2。
+ //0表示关闭,1表示打开,2表示获取当前的状态,不做设置,只返回
+ //IWBPMC,353456789012345,080835,1#
+ String[] split = cmd.split(CMDSPLIT);
+ if (split.length == 4) {
+ String index = split[2];
+ String value = split[3];
+ ICLogger.d("BPMC index ==> " + index + " value==> " + value);
+ //判断value,返回内容
+ boolean responseValue = false;
+ if ("0".equals(value)) {
+ responseValue = false;
+ LocationClient.setSkipMoveCheck(false);
+ Config.setSkipMoveCheckFlagGlobal(mRuntime.getContextProxy().context, false);
+ } else if ("1".equals(value)) {
+ responseValue = true;
+ LocationClient.setSkipMoveCheck(true);
+ Config.setSkipMoveCheckFlagGlobal(mRuntime.getContextProxy().context, true);
+ } else if ("2".equals(value)) {
+ responseValue = LocationClient.getSkipMoveCheck();
+ }
+ //返回结果
+ StringMessage apmc = APMC(index, responseValue);
+ ICLogger.d("apmc ==> " + apmc);
+ mConnection.send(apmc);
+ } else {
+ ICLogger.d("parse error ==> " + cmd);
+ }
+ }
+ private StringMessage APMC(String index, boolean responseValue) {
+ return genStringMessage(cmdMap.get(CMD_TYPE.APMC),
+ new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APMC))
+ .append(CMDSPLIT).append(index)
+ .append(CMDSPLIT).append(responseValue)
+ .append(CMDEND).toString());
}
/**