Перезагрузите устройство Android с помощью сообщения
Я пытаюсь перезагрузить устройство через SMS. Я новичок в программировании. И я использовал класс, расширенный от BroadcastReceiver
, После отправки сообщения на устройство оно перезагружается. Но после включения он будет перезагружаться снова и снова.
Как я могу исправить эту проблему?
@Override
public void onReceive(Context context, Intent intent) {
try {
Bundle bundle = intent.getExtras();
if (bundle != null) {
Object[] pdus = (Object[]) bundle.get("pdus");
String senderNumber = null;
String text = null;
StringBuilder address = null;
for (int i = 0; i < pdus.length; i++) {
SmsMessage sms = SmsMessage.createFromPdu((byte[]) pdus[i]);
senderNumber = sms.getOriginatingAddress();
text = sms.getDisplayMessageBody();
Log.println(Log.INFO, "Message", text + " iim sms awlaa");
}
if (text.equals("Reboot")){
Log.println(Log.INFO, "Message", "Rebooting via SMS");
SmsManager smsManager = SmsManager.getDefault();
Thread.sleep(4000);
markSmsAsRead(senderNumber,"Reboot",context);
Thread.sleep(4000);
smsManager.sendTextMessage(senderNumber, null, "Doing reboot", null, null);
//Thread.sleep(4000);
RestartFunc(context);
}
}
}
catch (Exception Ex){Log.e("MessageHandler",""+ Ex.getMessage());}}
private void RestartFunc(Context context){
try {
Log.d("Reboot","Going to Reboot by sms");
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
pm.reboot(null);
}
catch (Exception Ex) {Log.d("Reboot","" + Ex.getMessage());}
}