11
Androidのドキュメントでは、インテントを「実行する操作の抽象的な記述を含む情報の束」として定義しています。これは、必要に応じて複数のIntentオブジェクトを複数回再利用できるはずであることを示唆していますが、これを示す例は見当たりません。その後、インテントを再利用するのは安全ですか?
private final Intent enableBluetoothIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
...
protected void onCreate(Bundle savedInstanceState) {
enabledBluetoothIntent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 0);
...
}
、コード内の複数の場所でstartActivityForResult(enableDiscoverableIntent, REQUEST_ENABLE_BT_DISCOVERY)
を呼び出します。次の手順を実行しないように何らかの理由はありますか?同じインテントが2回開始されるとどうなりますか?
「インテント」を再利用する例は何ですか?私はときどき 'Intent'オブジェクトを作成し、どの条件が満たされているかに応じて' Activity'の別の場所で使用することがあります。それがまったく役立つかどうかわからない... – codeMagic
私の例では、ブルートゥースアクセスを要求しています。ブルートゥースアクセスを要求すると、ユーザーにブルートゥースの確認または拒否を求めるポップアップが表示されます。これは、いくつかの異なる場所で発生する可能性があります。インテントを使用して、Bluetoothが正常にオンになったが、後で他の場所でBluetoothがオフになっている場合は、再度リクエストする必要があります。同じオブジェクトを使用すると、同じ要求を送信したいので最もきれいに見えます。 – maria1nes
これは私には合理的だと私は何の問題も表示されません。しかし、いくつかの状況では、 'Intentフラグ'を使って、この 'Intent'からスタックから開始された同様のタスクをクリアする – codeMagic