活動をしています。起動モードは singleTask で、onNewIntent を実装しています。アクティビティが開いているときに (フラグ NEW_TASK および RESET_TASK_IF_NEEDED を使用して) このアクティビティを起動するインテントを送信すると、同じアクティビティが表示される前に画面が点滅します。
なぜこれが起こっているのでしょうか?システムがアクティビティのために新しいタスクや何かをスピンアップするのではなく、新しいインテントが onNewIntent に確実に配信されるようにするには、singleTask で十分であると考えました。次のいずれかを行うと、点滅が消えます。
- 起動モードを singleTop に変更します。
- フラグ Intent.FLAG_ACTIVITY_CLEAR_TOP を起動インテントに追加します。
何が起こっているのか、点滅を克服するために何ができるのか知りたいです (可能であれば、起動モードや起動インテント フラグを変更したくないです)。基本的に、これが機能しない正当な理由はありますか?
画面が点滅しても、onNewIntent を取得することに注意してください。