getIntent() を使用してバンドルされた情報を読み取るアプリに取り組んでいます。バンドル フィールドの 1 つを null に設定して、その後の再開時に変更されたインテントが受信されるようにしたいのですが、getIntent() から同じインテントを取得し続けます。戻るキーを押した後、新しいインテントが生成されることに気付きましたが、それ以外ではそうではありません。
intent.getExtras().getInt("FLAG_FIELD") returns 1
intent.getExtras().setString("FLAG_FIELD", null);
ただし、Activity が再び再開すると、getInt() は null ではなく値を返します。バンドル内の Int フィールドをクリアする方法がわかりません。
更新が試みられました:
intent.getExtras().putInt("FLAG_FIELD, -1);
これも機能しません。getIntent() の意図は変更できないようです。
更新: onResume() は、アクティビティが表示される前に、デバッガーで 3 回連続して呼び出されますか? したがって、ここでフラグを設定しても、実際の表示の前にどの resume() 呼び出しが最後の呼び出しであるかがわからないため、状態を変更するのは難しいようです。