Вызов Android воссоздать в onDestroy()

Могу я позвонить recreate() в onDestroy() метод MainActivity? Идея состоит в том, чтобы перезапустить активность всякий раз, когда ОС останавливает ее. Возможно ли это и есть ли недостатки в этом? По сути, у меня есть пустое действие, которое запускает многие службы, но приложение неожиданно останавливается (из-за чего все службы тоже останавливаются) на одном из производителей (хотя оно работает нормально для большинства телефонов). Например, что-то подобное возможно?

public void onDestroy()
      {
          super.onDestroy();
          this.recreate();
      }

ОБНОВЛЕНИЕ 1 Перезапустите основной вид деятельности через 2 часа, любые предложения по этому подходу. Разве это плохо, так как основная деятельность снова будет называть себя?

Intent ishintentC = new Intent(this, MainActivity.class);
PendingIntent pintentC = PendingIntent.getService(this, 0, ishintentC, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmC = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
alarmC.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()+7200000,AlarmManager.INTERVAL_HOUR*2, pintentC);

1 ответ

onDestroy() для Activity не гарантированно вызывается.

Если ОС решит прекратить вашу деятельность, она не будет вызывать onDestroy(), поэтому план не будет работать.

Другие вопросы по тегам