我将两个USB设备连接到我的Android 3.1 tabled,我尝试迭代所有这些设备并请求每个设备的权限:
UsbManager mManager = (UsbManager) context.getSystemService(Context.USB_SERVICE);
...
for (UsbDevice device : mManager.getDeviceList().values()) {
mManager.requestPermission(device, mPermissionIntent);
...
}
问题是只出现一个权限屏幕而不是两个,我怀疑requestPermission会导致此问题。 Android中是否有任何解决方法?
答案 0 :(得分:2)
我的解决方法是,如果要发出多个权限请求,请一次发出一个。也就是说,在接收方获得对第一个许可请求的响应之后,发出下一个请求。我昨晚测试了这个解决方法,它解决了丢失的权限屏幕和缺少响应问题。我使用的是Android 4.x。