From ed05a0e9e7ce25348a1648a860511505fbe25d80 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Thu, 11 Nov 2021 20:33:02 -0800 Subject: [PATCH] Fixed exception trying to get USB permission You can't set the intent to be immutable, otherwise the USB system can't set the device and permission in the response. This works fine on Android 12 without an immutable intent. --- Android.mk | 0 .../src/main/java/org/libsdl/app/HIDDeviceManager.java | 8 +------- 2 files changed, 1 insertion(+), 7 deletions(-) mode change 100644 => 100755 Android.mk diff --git a/Android.mk b/Android.mk old mode 100644 new mode 100755 diff --git a/android-project/app/src/main/java/org/libsdl/app/HIDDeviceManager.java b/android-project/app/src/main/java/org/libsdl/app/HIDDeviceManager.java index c751b821b..ae1c84266 100644 --- a/android-project/app/src/main/java/org/libsdl/app/HIDDeviceManager.java +++ b/android-project/app/src/main/java/org/libsdl/app/HIDDeviceManager.java @@ -554,13 +554,7 @@ public class HIDDeviceManager { if (usbDevice != null && !mUsbManager.hasPermission(usbDevice)) { HIDDeviceOpenPending(deviceID); try { - int flags; - if (Build.VERSION.SDK_INT >= 23) { - flags = PendingIntent.FLAG_IMMUTABLE; - } else { - flags = 0; - } - mUsbManager.requestPermission(usbDevice, PendingIntent.getBroadcast(mContext, 0, new Intent(HIDDeviceManager.ACTION_USB_PERMISSION), flags)); + mUsbManager.requestPermission(usbDevice, PendingIntent.getBroadcast(mContext, 0, new Intent(HIDDeviceManager.ACTION_USB_PERMISSION), 0)); } catch (Exception e) { Log.v(TAG, "Couldn't request permission for USB device " + usbDevice); HIDDeviceOpenResult(deviceID, false);