From 946e94bb5d03cb3a90d93393ba542728078e85fc Mon Sep 17 00:00:00 2001 From: Hyundo Moon Date: Thu, 2 Nov 2023 14:08:13 +0000 Subject: [PATCH] Send bluetooth permission reply intent only to BT package Bug: 292540708 Test: make SettingsGoogle -j; Also manually tested clicking 'Allow' to message permission request dialog. Change-Id: I3c339de2bf3bacd1e70f8dc8b0352aa83da14195 --- .../bluetooth/BluetoothPermissionActivity.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java b/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java index fdd9e25e4b6..41606bac572 100644 --- a/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java +++ b/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java @@ -24,10 +24,11 @@ import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.IntentFilter; +import android.content.pm.PackageManager.NameNotFoundException; import android.os.Bundle; -import android.text.TextUtils; import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; +import android.text.TextUtils; import android.util.Log; import android.view.View; import android.widget.Button; @@ -209,6 +210,14 @@ public class BluetoothPermissionActivity extends AlertActivity implements @VisibleForTesting void sendReplyIntentToReceiver(final boolean allowed, final boolean always) { + String bluetoothName; + try { + bluetoothName = Utils.findBluetoothPackageName(this); + } catch (NameNotFoundException e) { + Log.e(TAG, "Failed to find bluetooth package name", e); + return; + } + Intent intent = new Intent(BluetoothDevice.ACTION_CONNECTION_ACCESS_REPLY); if (DEBUG) { @@ -216,6 +225,7 @@ public class BluetoothPermissionActivity extends AlertActivity implements + " mReturnPackage"); } + intent.setPackage(bluetoothName); intent.putExtra(BluetoothDevice.EXTRA_CONNECTION_ACCESS_RESULT, allowed ? BluetoothDevice.CONNECTION_ACCESS_YES : BluetoothDevice.CONNECTION_ACCESS_NO);