USB主机模式 - 已授予但未记住的设备访问权限

问题描述 投票:16回答:3

我有一个完美的USB主机模式应用程序。我插入设备,Android弹出允许应用APPNAME访问USB设备?权限请求窗口,我选中默认情况下使用此USB设备复选框,然后点击确定,然后启动我的应用程序,它与USB设备完美通信。

但...

然后我拔下设备并将其重新插入.Android弹出允许应用APPNAME访问USB设备?对话再次。 WTH?我已经告诉Android默认情况下会这样做,那为什么还要再问我一次?

冰淇淋三明治4.0.3和Jellybean 4.1都会发生这种情况。

理想情况下,我希望Android能够记住即使在我重新启动Android设备之后,我也已经授予了对这个特定USB设备的许可。

那么为什么Android不记得我已经授予了许可?

android usb host
3个回答
7
投票

这是USB device access pop-up supression?的重复。基本上答案是在USB_DEVICE_ATTACHED上使用intent-filter并避开RequestPermission USB Host Mode API调用。


3
投票

我回答了这个here,虽然我认为允许在其他SE网站上复制。

在回答原因时,正如你所说的那样;因为您的硬件每次连接时都会得到不同的标识符,例如/ dev / bus / usb / 001 /,/ dev / bus / usb / 002 /等等。


1
投票

Android根本无法记住我的设备授权但幸运的是,我找出了原因:我在device_filter.xml中使用了十六进制值。在我将其更改为十进制值后,一切正常。我的Android可以记住我的许可证。

© www.soinside.com 2019 - 2024. All rights reserved.