Android UsbManager.requestpermission的EXTRA_PERMISSION_GRANTED一直返回false

423 阅读1分钟

不知道为什么设置flags为FLAG_IMMUTABLE就会导致 EXTRA_DEVICE 和 EXTRA_PERMISSION_GRANTED 不自动写入, 只要把flags改成0或者PendingIntent.FLAG_MUTABLE即可。

// 原代码
mUsbManager.requestPermission(mDevice, PendingIntent.getBroadcast(context, 0, new Intent(ACTION_USB_PERMISSION),  PendingIntent.FLAG_IMMUTABLE));

// 改之后
mUsbManager.requestPermission(mDevice, PendingIntent.getBroadcast(context, 0, new Intent(ACTION_USB_PERMISSION), 0));