これは以前に質問されたもので、回答がなかったので、質問の言い回しを少し変えてみます。Service
自分でバインドしたり起動したりせずに、Android にデータを渡すさまざまな方法は何ですか?
これが問題HostApduService
です-NFCカードトランザクションごとにオペレーティングシステムによって開始される. システム権限である権限が必要なandroid.permission.BIND_NFC_SERVICE
ため、アプリケーションはそれにバインドできません。データを保存したくないので、ディスクに書き込まれるものは何でも構いません。いくつかの可能な解決策を考えましたが、それらは厄介であるか、安全ではありません。
- アプリの SharedPreferences にデータを入れます。これにより、DAR の問題が発生します。
- に情報をブロードキャストします
Service
。はカード トランザクションのHostApduService
間実行されるため、サービスが機能し始める前にブロードキャストがサービスに到達するタイミングを確実に計ることはできません。 - 渡したい情報を
static
どこかのフィールドに入れます。これは面倒で、並行性の問題を引き起こす可能性がありますが、私が現在使用しているものです。
他のアイデアはありますか?前もって感謝します。