この質問のコンテキストは、この質問に対する非常に有用な回答で説明されているソリューションを実装するときに始まります。私は、Android 4.4 を搭載した携帯電話用に別のコードを作成することになりました (使用enableReaderMode
と 以前のバージョン用 (使用enableForegroundDispatch
))。
アプリがカードとのやり取りを終了した後、次の 2 つの異なる動作を観察しました。
- enableForegroundDispatchを使用すると、ユーザーが電話からカードを取り外して再び近づけるまで、電話とカードの間で NFC 相互作用は発生しません。
- enableReaderModeを使用すると、電話とカードのやり取りをコーディングしたアクティビティが終了するとすぐに、電話はカードを再度読み取ろうとします。他のアプリが起動するか (NFC イベントにサブスクライブしている場合)、電話が迷惑な音を鳴らします (NFCカードが検出されましたが、そのイベントをリッスンしているアプリはありません)。これは非常に望ましくなく、ユーザー エクスペリエンスを低下させます。ユーザーがカードを取り外す前に、別のことが起こっています。
enableReaderMode
電話が次のように動作するように設定する方法はありenableForegroundDispatch
ますか?