summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2021-04-23 09:11:28 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2021-04-23 09:11:28 +0000
commit47b254ad8859ae061f58cd853f7929218ae29ef0 (patch)
tree9a770e490aa50f5b387de26e04c3dfabc905e0d0 /src
parent3e6e4a1ad5a7680a93cb18a75c671baad36354a6 (diff)
parent8adedc62496cf8cf6ecfc6ccf23b0b248081d7d4 (diff)
downloadpackages_apps_Settings-47b254ad8859ae061f58cd853f7929218ae29ef0.tar.gz
packages_apps_Settings-47b254ad8859ae061f58cd853f7929218ae29ef0.tar.bz2
packages_apps_Settings-47b254ad8859ae061f58cd853f7929218ae29ef0.zip
Merge "Fix bluetooth settings will broadcast to anywhere when some cases" into sc-dev
Diffstat (limited to 'src')
-rw-r--r--src/com/android/settings/bluetooth/BluetoothPermissionActivity.java15
-rw-r--r--src/com/android/settings/bluetooth/BluetoothPermissionRequest.java21
-rw-r--r--src/com/android/settings/bluetooth/DevicePickerFragment.java13
3 files changed, 17 insertions, 32 deletions
diff --git a/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java b/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java
index 10acdb545b..8794b08129 100644
--- a/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java
+++ b/src/com/android/settings/bluetooth/BluetoothPermissionActivity.java
@@ -32,6 +32,7 @@ import android.widget.TextView;
import androidx.preference.Preference;
+import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.app.AlertActivity;
import com.android.internal.app.AlertController;
import com.android.settings.R;
@@ -51,8 +52,6 @@ public class BluetoothPermissionActivity extends AlertActivity implements
private TextView messageView;
private Button mOkButton;
private BluetoothDevice mDevice;
- private String mReturnPackage = null;
- private String mReturnClass = null;
private int mRequestType = 0;
private BroadcastReceiver mReceiver = new BroadcastReceiver() {
@@ -89,8 +88,6 @@ public class BluetoothPermissionActivity extends AlertActivity implements
}
mDevice = i.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
- mReturnPackage = i.getStringExtra(BluetoothDevice.EXTRA_PACKAGE_NAME);
- mReturnClass = i.getStringExtra(BluetoothDevice.EXTRA_CLASS_NAME);
mRequestType = i.getIntExtra(BluetoothDevice.EXTRA_ACCESS_REQUEST_TYPE,
BluetoothDevice.REQUEST_TYPE_PHONEBOOK_ACCESS);
@@ -202,14 +199,14 @@ public class BluetoothPermissionActivity extends AlertActivity implements
sendReplyIntentToReceiver(false, true);
}
- private void sendReplyIntentToReceiver(final boolean allowed, final boolean always) {
+ @VisibleForTesting
+ void sendReplyIntentToReceiver(final boolean allowed, final boolean always) {
Intent intent = new Intent(BluetoothDevice.ACTION_CONNECTION_ACCESS_REPLY);
- if (mReturnPackage != null && mReturnClass != null) {
- intent.setClassName(mReturnPackage, mReturnClass);
+ if (DEBUG) {
+ Log.i(TAG, "sendReplyIntentToReceiver() Request type: " + mRequestType
+ + " mReturnPackage");
}
- if (DEBUG) Log.i(TAG, "sendReplyIntentToReceiver() Request type: " + mRequestType +
- " mReturnPackage" + mReturnPackage + " mReturnClass" + mReturnClass);
intent.putExtra(BluetoothDevice.EXTRA_CONNECTION_ACCESS_RESULT,
allowed ? BluetoothDevice.CONNECTION_ACCESS_YES
diff --git a/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java b/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java
index 7fac4991c7..66665f0676 100644
--- a/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java
+++ b/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java
@@ -56,8 +56,6 @@ public final class BluetoothPermissionRequest extends BroadcastReceiver {
Context mContext;
int mRequestType;
BluetoothDevice mDevice;
- String mReturnPackage = null;
- String mReturnClass = null;
@Override
public void onReceive(Context context, Intent intent) {
@@ -77,11 +75,10 @@ public final class BluetoothPermissionRequest extends BroadcastReceiver {
mDevice = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
mRequestType = intent.getIntExtra(BluetoothDevice.EXTRA_ACCESS_REQUEST_TYPE,
BluetoothDevice.REQUEST_TYPE_PROFILE_CONNECTION);
- mReturnPackage = intent.getStringExtra(BluetoothDevice.EXTRA_PACKAGE_NAME);
- mReturnClass = intent.getStringExtra(BluetoothDevice.EXTRA_CLASS_NAME);
- if (DEBUG) Log.d(TAG, "onReceive request type: " + mRequestType + " return "
- + mReturnPackage + "," + mReturnClass);
+ if (DEBUG) {
+ Log.d(TAG, "onReceive request type: " + mRequestType);
+ }
// Even if the user has already made the choice, Bluetooth still may not know that if
// the user preference data have not been migrated from Settings app's shared
@@ -110,8 +107,6 @@ public final class BluetoothPermissionRequest extends BroadcastReceiver {
connectionAccessIntent.putExtra(BluetoothDevice.EXTRA_ACCESS_REQUEST_TYPE,
mRequestType);
connectionAccessIntent.putExtra(BluetoothDevice.EXTRA_DEVICE, mDevice);
- connectionAccessIntent.putExtra(BluetoothDevice.EXTRA_PACKAGE_NAME, mReturnPackage);
- connectionAccessIntent.putExtra(BluetoothDevice.EXTRA_CLASS_NAME, mReturnClass);
String deviceAddress = mDevice != null ? mDevice.getAddress() : null;
String deviceName = mDevice != null ? mDevice.getName() : null;
@@ -231,7 +226,7 @@ public final class BluetoothPermissionRequest extends BroadcastReceiver {
LocalBluetoothManager bluetoothManager = Utils.getLocalBtManager(mContext);
CachedBluetoothDeviceManager cachedDeviceManager =
- bluetoothManager.getCachedDeviceManager();
+ bluetoothManager.getCachedDeviceManager();
CachedBluetoothDevice cachedDevice = cachedDeviceManager.findDevice(mDevice);
if (cachedDevice == null) {
cachedDevice = cachedDeviceManager.addDevice(mDevice);
@@ -289,13 +284,9 @@ public final class BluetoothPermissionRequest extends BroadcastReceiver {
private void sendReplyIntentToReceiver(final boolean allowed) {
Intent intent = new Intent(BluetoothDevice.ACTION_CONNECTION_ACCESS_REPLY);
- if (mReturnPackage != null && mReturnClass != null) {
- intent.setClassName(mReturnPackage, mReturnClass);
- }
-
intent.putExtra(BluetoothDevice.EXTRA_CONNECTION_ACCESS_RESULT,
- allowed ? BluetoothDevice.CONNECTION_ACCESS_YES
- : BluetoothDevice.CONNECTION_ACCESS_NO);
+ allowed ? BluetoothDevice.CONNECTION_ACCESS_YES
+ : BluetoothDevice.CONNECTION_ACCESS_NO);
intent.putExtra(BluetoothDevice.EXTRA_DEVICE, mDevice);
intent.putExtra(BluetoothDevice.EXTRA_ACCESS_REQUEST_TYPE, mRequestType);
mContext.sendBroadcast(intent, android.Manifest.permission.BLUETOOTH_ADMIN);
diff --git a/src/com/android/settings/bluetooth/DevicePickerFragment.java b/src/com/android/settings/bluetooth/DevicePickerFragment.java
index ab8eea5db6..f60183b1c4 100644
--- a/src/com/android/settings/bluetooth/DevicePickerFragment.java
+++ b/src/com/android/settings/bluetooth/DevicePickerFragment.java
@@ -48,10 +48,10 @@ public final class DevicePickerFragment extends DeviceListPreferenceFragment {
@VisibleForTesting
BluetoothProgressCategory mAvailableDevicesCategory;
+ @VisibleForTesting
+ Context mContext;
private boolean mNeedAuth;
- private String mLaunchPackage;
- private String mLaunchClass;
private boolean mScanAllowed;
public DevicePickerFragment() {
@@ -64,8 +64,6 @@ public final class DevicePickerFragment extends DeviceListPreferenceFragment {
mNeedAuth = intent.getBooleanExtra(BluetoothDevicePicker.EXTRA_NEED_AUTH, false);
setFilter(intent.getIntExtra(BluetoothDevicePicker.EXTRA_FILTER_TYPE,
BluetoothDevicePicker.FILTER_TYPE_ALL));
- mLaunchPackage = intent.getStringExtra(BluetoothDevicePicker.EXTRA_LAUNCH_PACKAGE);
- mLaunchClass = intent.getStringExtra(BluetoothDevicePicker.EXTRA_LAUNCH_CLASS);
mAvailableDevicesCategory = (BluetoothProgressCategory) findPreference(KEY_BT_DEVICE_LIST);
}
@@ -85,6 +83,7 @@ public final class DevicePickerFragment extends DeviceListPreferenceFragment {
getActivity().setTitle(getString(R.string.device_picker));
UserManager um = (UserManager) getSystemService(Context.USER_SERVICE);
mScanAllowed = !um.hasUserRestriction(DISALLOW_CONFIG_BLUETOOTH);
+ mContext = getContext();
setHasOptionsMenu(true);
}
@@ -190,9 +189,7 @@ public final class DevicePickerFragment extends DeviceListPreferenceFragment {
private void sendDevicePickedIntent(BluetoothDevice device) {
Intent intent = new Intent(BluetoothDevicePicker.ACTION_DEVICE_SELECTED);
intent.putExtra(BluetoothDevice.EXTRA_DEVICE, device);
- if (mLaunchPackage != null && mLaunchClass != null) {
- intent.setClassName(mLaunchPackage, mLaunchClass);
- }
- getActivity().sendBroadcast(intent, Manifest.permission.BLUETOOTH_ADMIN);
+
+ mContext.sendBroadcast(intent, Manifest.permission.BLUETOOTH_ADMIN);
}
}