Androidの通知とアクティビティのオーダーに関する質問があります。私はいくつかのタスクを実行する私の最初の活動として、Activity_Mainいる通知のアクティビティオーダー
:
は、私は次のシナリオを持っています。 BACKボタンを押すと通知が発生します。 Activity_Mainには次の呼び出しがあります(onKeyDown()
、OnPause()
、OnStop()
、OnDestroy()
)。ユーザーが通知アイコンをクリックすると、Activity_Mainが開始され、呼び出し順序は(OnCreate()
,OnResume()
)になります。どちらが良いですか。
今Activity_MainがActivity_SecondはStartActivityForResult()
APIを使用して、タスクの進捗状況の通知を生成する開始ボタンが含まれ、関数呼び出しは、(onSaveInstance()
、OnPause()
、OnStop()
)。 Activity_SecondのボタンをsetResult(result)
で押すと、すべて正常に動作します。しかし、ユーザーが通知アイコン(activity_secondsが表示されている)を選択すると、Activity_main(onCreate()
、OnResume()
)の新しいインスタンスが開始されました。私が欲しいのは、Activity_Secondがそれを閉じ、(Activity_MainのonResume()
)を呼び出す必要があるということです。今すぐActivity_Main(2番目のインスタンス)、Activity_second、Activity_Main(1番目のインスタンス)がアクティビティスタックにあります。
通知を生成する際に次のフラグが設定されています。
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_SINGLE_TOP);
これを解決する他の方法は何ですか?あなたの目的にこれらのフラグを追加した後
didntのヘルプ、vineet、感謝を解決するために私を助けました – JRC