From: snicker Date: Tue, 28 Apr 2020 19:35:06 +0000 (+0800) Subject: 添加 SMS指令开启fota升级及 结果反馈的Action X-Git-Url: http://git.snicker.com.cn/sitemap.xml?a=commitdiff_plain;h=73c26edd417b95a74c6106d436f4339d3b0f0a3d;p=icsupport.git 添加 SMS指令开启fota升级及 结果反馈的Action com.ic.action.startfotaUpdate; com.ic.action.fotaUpdateReply --- diff --git a/app/src/main/java/com/enqualcomm/support/ICSmsManager.java b/app/src/main/java/com/enqualcomm/support/ICSmsManager.java index 6a598d9d..ed399e92 100644 --- a/app/src/main/java/com/enqualcomm/support/ICSmsManager.java +++ b/app/src/main/java/com/enqualcomm/support/ICSmsManager.java @@ -41,6 +41,7 @@ import rx.functions.Action1; import static com.enqualcomm.support.Config.upload_logs_via_ftp; import static com.enqualcomm.support.Constants.DIALOG_ACTION; +import static com.enqualcomm.support.Constants.contact; import static com.enqualcomm.support.utils.DeviceInfoUtil.getDeviceVersion; import static com.enqualcomm.support.utils.SimSignalUtil.send_at_cmd; import static com.enqualcomm.support.utils.SimSignalUtil.send_at_setImei0; @@ -49,11 +50,16 @@ import static com.enqualcomm.support.utils.SimSignalUtil.send_at_setImei1; public class ICSmsManager { private static String ACTION_SMSCMD="com.enqualcomm.support.SMSCMD"; + private static String ACTION_SMSCMD_Reply="com.ic.action.fotaUpdateReply"; + private static String KeyReplyData="reply"; + private static String cell_number_to_reply=""; //this number is use for ACTION_SMSCMD_Reply + private static String ACTION_START_FOTA_UPDATE="com.ic.action.startfotaUpdate"; private static long preTimeMillis; private Context mContext = null; Runtime runtime; ICSmsManager.SmsReceiver smsReceiver; + public ICSmsManager( Runtime _runtime) { this.runtime = _runtime; this.mContext = runtime.getContextProxy().context; @@ -79,6 +85,14 @@ public class ICSmsManager { return true; } + + private void broadCastStartFotaUpdate(Context context){ + + Intent intent = new Intent(); + intent.setAction(ACTION_START_FOTA_UPDATE); + context.sendBroadcast(intent); + + } public void registerBroadReceiver() { IntentFilter intentFilter = new IntentFilter(); @@ -88,6 +102,7 @@ public class ICSmsManager { intentFilter = new IntentFilter(); intentFilter.addAction(ACTION_SMSCMD); + intentFilter.addAction(ACTION_SMSCMD_Reply); (this.runtime.getContextProxy()).context.registerReceiver(this.mSMSCMD_BroadcastReceiver, intentFilter); } @@ -103,6 +118,9 @@ public class ICSmsManager { if (ACTION_SMSCMD.equals(action)) { String cmd = intent.getStringExtra("smsCmd"); handleSMS_CMD("", cmd); + }else if (ACTION_SMSCMD_Reply.equals(action)){ + String replydata=intent.getStringExtra(KeyReplyData); + sendSMS(cell_number_to_reply,replydata); } } }; @@ -703,6 +721,11 @@ public class ICSmsManager { } else { sendSMS(phonenumber, "set SMSCMD PWD format error!"); } + } else if (sms.equals(ENCRYPED_HEADER+"#updateViaFota#")) { + + cell_number_to_reply=phonenumber; + broadCastStartFotaUpdate(mContext); + sendSMS(phonenumber, "start fota update !"); }else { return false;