2013-03-01 21 views
13

私は完璧に動作するUSB​​ホストモードアプリケーションを持っています。私はデバイスを接続し、AndroidはポップアップしますAPPNAMEがUSBデバイスにアクセスできるようにしますか?許可要求ウィンドウこのUSBデバイスにデフォルトで使用するチェックボックスをタップしてOKをタップすると、私のアプリが起動し、USBデバイスと完全に通信します。USBホストモード - 許可されているが記憶されていないデバイスアクセス許可

しかし...

は、それから私は、デバイスを外して取り付け直した。Androidは アプリのAPPNAMEは、USBデバイスへのアクセスを許可ポップアップしますか?ダイアログに戻ります。 WTH?私はすでにデフォルトでこれを行うためにアンドロイドに言いました、なぜそれが私にもう一度尋ねていますか?

これは、Icecream Sandwich 4.0.3とJellybean 4.1の両方で発生します。

理想的には、Androidデバイスを再起動した後でも、この特定のUSBデバイスに対して許可を与えたことをAndroidが覚えておきたいと思ってください。

なぜAndroidは私が許可を与えたことを覚えていないのですか?

+0

[USBデバイスアクセスポップアップの抑制?](http://stackoverflow.com/questions/12388914/usb-device-access-pop-up-supression) – Hasturkun

答えて

6

これはUSB device access pop-up supression?のdupです。基本的には、USB_DEVICE_ATTACHEDにインテントフィルタを使用して、RequestPermission USBホストモードAPI呼び出しをクリアすることです。

+1

インテントフィルタは、リンクされた質問であり、RequestPermissionではありません。 – kbro

+0

私はインテントフィルタを使用しましたが、許可を求めています – ashokk

3

私はこのhereと回答しましたが、私は他のSEサイト間でその重複を収集できますが、許可されています。

の回答では、なぜであるかは、上記スレッドで推測したとおりです。あなたのハードウェアでは、接続するたびに異なる識別子が得られるからです。/dev/bus/usb/001 /、/ dev/bus/usb/002 /など。

0

Androidは私のデバイスのための私の助成金を覚えていませんが、幸いにも、私はその理由を理解しました:私はdevice_filter.xmlで16進値を使用しました。 の小数点以下の値をに変更すると、すべて正常に機能します。私のAndroidは私の許可を覚えています。