次のシナリオで何をすべきか教えてもらえますか?Ac1、Ac2、Ac3、Ac4の4つのアクティビティがあり、各アクティビティには[キャンセル]ボタンがあり、押すとAc1に移動します。また、戻るボタンは前のアクティビティに戻る必要があります。Ac1はフローの開始であり、Ac4はフローの終了です。
[キャンセル]ボタンと最後のAc4でFLAG_ACTIVITY_NEW_TASKを使用して、Ac1に戻りました。しかし、これは期待どおりに機能していませんでした。そのため、いずれかのアクティビティで[キャンセル]ボタンが押されたときにアクティビティを停止するブロードキャストレジスタがあります。したがって、ブロードキャストレシーバーを受信したら、finish()を呼び出して、スタックされたアクティビティを閉じます。開発者向けオプションが設定されていない場合は、すべて正常に機能します(アクティビティを保持しないでください)。このオプションを設定すると、1。Ac1がAc2に移動します。2. Ac2は開始されますが、Ac1はクリアされます。3.Ac2がAc3に移動します。4。Ac3が開始され、Ac2がクリアされます。5.キャンセルが呼び出されると、ブロードキャスト受信者が送信されてアクティビティが終了します。6.驚くべきことに、Ac1の代わりにAc2が呼び出されます。Ac2のonCreateが呼び出されているのがわかりました。
私はこの状況を取り除く方法を知りません。誰かがこの状況から私を助けることができますか?
ありがとう