1

私はActivityとを持っていますIntentService

Activity呼び出され、IntentService終了IntentServiceしたらアクティビティを再開したいと思います。ただし、現在画面に表示されている場合に限ります。再度開かれたときに (のみonResume()) 呼び出され、新しいインスタンスが作成されていない場合も、再起動する必要があります。

では、これを実践するための最良の方法は何ですか?

4

1 に答える 1

0

アクティビティがまだ画面に表示されている場合は、再起動する必要はありません。が作業を終了しBroadcastReceiverたときに送信されるブロードキャストを処理するを登録できます。IntentService

アクティビティが終了したか、画面に表示されていない場合はstartActivity、新しいインスタンスを使用して作成しても安全です (悪い習慣ではありません)。それはあなたの歴史を一貫させます。

アクティビティの唯一のインスタンスが本当に必要な場合は、マニフェストのアクティビティ タグに次の行を追加できます。

android:launchMode="singleTask"

また

android:launchMode="singleInstance"

詳細を知りたい場合は、この投稿で違いを説明します。

于 2013-08-06T14:04:41.957 に答える