0

recreate()onDestroy()メソッドを呼び出すことはできますMainActivityか? アイデアは、OS がアクティビティを停止するたびにアクティビティを再開することです。それは可能ですか、これを行うことの欠点はありますか。基本的に、私は多くのサービスを開始する空のアクティビティを持っていますが、メーカーの1つでアプリが予期せず停止します(すべてのサービスが停止するため)(ほとんどの電話では正常に動作します)。例えば、こんなことはありえるのでしょうか?

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);
4

1 に答える 1

0

アクティビティの onDestroy() が呼び出される保証はありません。

OS がアクティビティを強制終了することを決定した場合、onDestroy() は呼び出されないため、その計画は機能しません。

于 2015-10-23T01:32:52.917 に答える