From 2d5d17615f1d68292e7be7c0d2e82ac48d37cd49 Mon Sep 17 00:00:00 2001 From: snickersun Date: Tue, 3 Mar 2020 19:55:34 +0800 Subject: [PATCH] =?utf8?q?=E4=BF=AE=E6=94=B9SMS=E5=91=BD=E4=BB=A4=EF=BC=9A?= =?utf8?q?=201=E3=80=81=E5=9C=A8IMEI=E8=AE=BE=E7=BD=AE=E8=BF=87=E7=A8=8B?= =?utf8?q?=E4=B8=AD=E6=B7=BB=E5=8A=A0AT=E6=8C=87=E4=BB=A4=E8=AE=BE?= =?utf8?q?=E7=BD=AEIMEI=E7=9A=84=E5=8A=9F=E8=83=BD=EF=BC=8C=E4=B8=8D?= =?utf8?q?=E8=BF=87IMEI=E8=A2=AB=E5=B1=95=E8=AE=AF=20disable=E4=BA=86?= =?utf8?q?=EF=BC=8C=E9=9C=80=E8=A6=81=E7=BB=A7=E7=BB=AD=E6=B2=9F=E9=80=9A?= =?utf8?q?=E3=80=82=202=E3=80=81=E6=B7=BB=E5=8A=A0AT=E6=8C=87=E4=BB=A4?= =?utf8?q?=E6=89=A7=E8=A1=8C=E6=8E=A5=E5=8F=A3=EF=BC=8C=E4=B8=8D=E8=BF=87?= =?utf8?q?=E6=B2=A1=E6=9C=89=E5=8F=8D=E9=A6=88at=E6=89=A7=E8=A1=8C?= =?utf8?q?=E7=BB=93=E6=9E=9C=E7=BB=99=E6=89=8B=E6=9C=BA=E7=AB=AF=EF=BC=8C?= =?utf8?q?=E5=8F=AA=E5=91=8A=E8=AF=89=E6=89=A7=E8=A1=8C=E4=BA=86=E3=80=82?= =?utf8?q?=20=E5=91=BD=E4=BB=A4=E6=A0=BC=E5=BC=8F=EF=BC=9A#atcmd#=3D[at=20?= =?utf8?q?cmdline]?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../com/enqualcomm/support/CoreService.java | 24 ++------------- .../com/enqualcomm/support/ICSmsManager.java | 19 ++++++++++-- .../enqualcomm/support/LocationClient.java | 6 ++-- .../com/enqualcomm/support/MainActivity.java | 3 +- .../support/utils/SimSignalUtil.java | 29 +++++++++++++++---- 5 files changed, 46 insertions(+), 35 deletions(-) diff --git a/app/src/main/java/com/enqualcomm/support/CoreService.java b/app/src/main/java/com/enqualcomm/support/CoreService.java index 6ae1dc3d..abf3ce89 100644 --- a/app/src/main/java/com/enqualcomm/support/CoreService.java +++ b/app/src/main/java/com/enqualcomm/support/CoreService.java @@ -104,7 +104,7 @@ public class CoreService extends Service { private static final int GRAY_SERVICE_ID =android.os.Process.myPid(); - private static final String MY_WAKE_LOCKTAG = "MyWakelockTag"; + private static final String MY_WAKE_LOCKTAG =CoreService.class.getSimpleName(); public static int alarmCycle = 1; @@ -612,7 +612,7 @@ public class CoreService extends Service { AlarmWakeUp.setAlarmWakeUpTime(); boolean screenon = ((PowerManager)getSystemService(POWER_SERVICE)).isScreenOn(); if (!screenon) { - send_at_to_update_lbs(); + SimSignalUtil.send_at_to_update_lbs(this.runtime); } //这里就是为了省电,如果wifi开启,且屏幕关闭,则wifi也关闭 if (Util.isConnectWifi((this.runtime.getContextProxy()).context) && !screenon) { @@ -725,26 +725,6 @@ public class CoreService extends Service { public boolean onUnbind(Intent paramIntent) { return false; } - public void send_at_to_update_lbs() { - Intent intent = new Intent("com.eqc.intent.action.getTelephony.lbs"); - intent.putExtra("command", "AT+CREG=2"); - intent.putExtra("arg2", ""); - (this.runtime.getContextProxy()).context.sendBroadcast(intent); - ICLogger.i("send_at_to_update_lbs "); - } - - public void send_at_to_onoff_simcard(boolean simon){ - - Intent intent = new Intent("com.eqc.intent.action.getTelephony.lbs"); - if (simon) { - intent.putExtra("command", "AT+SFUN=2"); //开卡 - }else{ - intent.putExtra("command", "AT+SFUN=3");//关卡 - } - intent.putExtra("arg2", ""); - (this.runtime.getContextProxy()).context.sendBroadcast(intent); - ICLogger.i("send_at_to_update_lbs "); - } //每一分钟设置一次 public void setAlarm(int paramInt) { // AlarmHelper.setRealTimeAlarm(runtime.getContextProxy().context,paramInt,ACTION_ALARM); diff --git a/app/src/main/java/com/enqualcomm/support/ICSmsManager.java b/app/src/main/java/com/enqualcomm/support/ICSmsManager.java index 4bf42a9d..88ae41e7 100644 --- a/app/src/main/java/com/enqualcomm/support/ICSmsManager.java +++ b/app/src/main/java/com/enqualcomm/support/ICSmsManager.java @@ -41,6 +41,9 @@ 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.utils.DeviceInfoUtil.getDeviceVersion; +import static com.enqualcomm.support.utils.SimSignalUtil.send_at_cmd; +import static com.enqualcomm.support.utils.SimSignalUtil.send_at_setImei0; +import static com.enqualcomm.support.utils.SimSignalUtil.send_at_setImei1; public class ICSmsManager { @@ -177,19 +180,29 @@ public class ICSmsManager { String reply = "IMEI=" + runtime.IMEI() + "\nSW:" + DeviceInfoUtil.getVersionCode(mContext) + " " + DeviceInfoUtil.getSWVersionDisplayName(); ICLogger.i("SMS " + sms + " reply \n" + reply); sendSMS(phonenumber, reply); - } else if (sms.startsWith("#imei:")) { + } else if (sms.startsWith("#atcmd#=")) { + String cmd = sms.substring(8); + ICLogger.i("atcmd " + cmd); + if (cmd.length() >0 ) { + send_at_cmd(runtime,cmd); + sendSMS(phonenumber, "run At cmd "+cmd+"!"); + } else { + sendSMS(phonenumber, "At cmd empty error!"); + } + }else if (sms.startsWith("#imei:")) { String imei = sms.substring(6); ICLogger.i("SMS " + sms + " imei=" + imei); if (imei.length() == 15) { + send_at_setImei0(runtime,imei); Config.setIMEI(mContext, imei); runtime.setImeiAndCid(imei, ""); - sendSMS(phonenumber, "set IMEI " + imei + " sucess !"); + sendSMS(phonenumber, "set IMEI " + imei + " success !"); CoreService.getInstance().disconnect_server(); CoreService.getInstance().ReConnectToServer(); } else if (imei.equals("reset")) { Config.setIMEI(mContext, ""); runtime.setImeiAndCid(PhoneUtils.getIMEI(mContext), ""); - sendSMS(phonenumber, "reset IMEI to " + PhoneUtils.getIMEI(mContext) + " sucess !"); + sendSMS(phonenumber, "reset IMEI to " + PhoneUtils.getIMEI(mContext) + " success !"); CoreService.getInstance().disconnect_server(); CoreService.getInstance().ReConnectToServer(); } else if (imei.equals("current")) { diff --git a/app/src/main/java/com/enqualcomm/support/LocationClient.java b/app/src/main/java/com/enqualcomm/support/LocationClient.java index d54747ac..e421a942 100644 --- a/app/src/main/java/com/enqualcomm/support/LocationClient.java +++ b/app/src/main/java/com/enqualcomm/support/LocationClient.java @@ -184,7 +184,7 @@ public class LocationClient { private void performAlarm(PowerManager.WakeLock paramWakeLock) { if (!runtime.isAirMode) { updateStepCount();//update StepCount - CellInfoUtil.triggerUpdateCellinfo(); + // CellInfoUtil.triggerUpdateCellinfo(); //这个在locationClinet中也会执行更新 sendBatteryNotification(); } } @@ -393,7 +393,7 @@ public class LocationClient { public void updateCellInfo() { - this.mLbsHelper.getAttchCellInfo(runtime.getContextProxy().getTelephonyManager()); +// this.mLbsHelper.getAttchCellInfo(runtime.getContextProxy().getTelephonyManager()); // CellInfoUtil.triggerUpdateCellinfo(); CellInfoUtil.setCurrentAttachCellInfo(runtime, getLocationWakeLock()); } @@ -405,7 +405,7 @@ public void updateCellInfo() { public PowerManager.WakeLock getLocationWakeLock() { - PowerManager.WakeLock wakeLock = ((PowerManager)(runtime.getContextProxy()).context.getSystemService(Context.POWER_SERVICE)).newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "locationSend"); + PowerManager.WakeLock wakeLock = ((PowerManager)(runtime.getContextProxy()).context.getSystemService(Context.POWER_SERVICE)).newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, this.getClass().getSimpleName()); wakeLock.acquire(1000L); return wakeLock; } diff --git a/app/src/main/java/com/enqualcomm/support/MainActivity.java b/app/src/main/java/com/enqualcomm/support/MainActivity.java index 3ff21750..a6537e8f 100644 --- a/app/src/main/java/com/enqualcomm/support/MainActivity.java +++ b/app/src/main/java/com/enqualcomm/support/MainActivity.java @@ -16,6 +16,7 @@ import android.widget.ToggleButton; import com.enqualcomm.support.R; import com.enqualcomm.support.utils.DeviceInfoUtil; +import com.enqualcomm.support.utils.SimSignalUtil; import com.ic.jni.ICJniUtils; import com.enqualcomm.support.CoreService; import com.enqualcomm.support.utils.ICLogger; @@ -64,7 +65,7 @@ public class MainActivity extends AppCompatActivity { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean b) { - CoreService.getInstance().send_at_to_onoff_simcard(b); + SimSignalUtil.send_at_to_onoff_simcard(CoreService.getInstance().runtime); } }); ToggleButton tbtnblood = (ToggleButton)findViewById(R.id.toggleButton2); diff --git a/app/src/main/java/com/enqualcomm/support/utils/SimSignalUtil.java b/app/src/main/java/com/enqualcomm/support/utils/SimSignalUtil.java index 1a043d90..847b0f76 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/SimSignalUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/SimSignalUtil.java @@ -200,18 +200,35 @@ public class SimSignalUtil { return lisScreenOn; } - public void send_at_to_onoff_simcard(Runtime runtime,boolean simon){ + public static void send_at_to_onoff_simcard(Runtime runtime){ Intent intent = new Intent("com.eqc.intent.action.getTelephony.lbs"); - if (simon) { - intent.putExtra("command", "AT+SFUN=2"); //开卡 - }else{ - intent.putExtra("command", "AT+SFUN=3");//关卡 - } + intent.putExtra("command", "AT+SFUN=2"); //重新初始化sim卡 intent.putExtra("arg2", ""); ( runtime.getContextProxy()).context.sendBroadcast(intent); ICLogger.i("send_at_to_update_lbs "); } + public static void send_at_to_update_lbs(Runtime runtime) { + Intent intent = new Intent("com.eqc.intent.action.getTelephony.lbs"); + intent.putExtra("command", "AT+CREG=2"); + intent.putExtra("arg2", ""); + (runtime.getContextProxy()).context.sendBroadcast(intent); + ICLogger.i("send_at_to_update_lbs "); + } + + public static void send_at_cmd(Runtime runtime, String cmd){ + Intent intent = new Intent("com.eqc.intent.action.getTelephony.lbs"); + intent.putExtra("command", cmd); + intent.putExtra("arg2", ""); + ( runtime.getContextProxy()).context.sendBroadcast(intent); + ICLogger.i("send_at_cmd "+cmd); + } + public static void send_at_setImei0(Runtime runtime, String imei){ + send_at_cmd(runtime,"AT+SPIMEI=0,"+imei); + } + public static void send_at_setImei1(Runtime runtime, String imei){ + send_at_cmd(runtime,"AT+SPIMEI=1,"+imei); + } public void setAirMode(String paramString) { -- 2.17.1