From e6de78375fe1beeb0a5a734629cbde43e76245cd Mon Sep 17 00:00:00 2001 From: Joseph Pirozzo Date: Tue, 29 Mar 2016 09:22:48 -0700 Subject: [PATCH] PBAP Pairing Permission Remove the always there checkbox for phonebook permission when pairing from a device that supports the client side of PBAP rather than the server side. A device should not support both PBAP PSE and PCE. Bug: 25933871 Change-Id: I9535bbb9d5fcdfeaa13a2fec3461f47bb5518e28 --- .../settings/bluetooth/BluetoothPairingDialog.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/com/android/settings/bluetooth/BluetoothPairingDialog.java b/src/com/android/settings/bluetooth/BluetoothPairingDialog.java index 182344c102a..48ca5a93eb3 100755 --- a/src/com/android/settings/bluetooth/BluetoothPairingDialog.java +++ b/src/com/android/settings/bluetooth/BluetoothPairingDialog.java @@ -18,6 +18,7 @@ package com.android.settings.bluetooth; import android.bluetooth.BluetoothClass; import android.bluetooth.BluetoothDevice; +import android.bluetooth.BluetoothUuid; import android.content.BroadcastReceiver; import android.content.Context; import android.content.DialogInterface; @@ -43,6 +44,7 @@ import com.android.internal.app.AlertController; import com.android.settings.R; import com.android.settingslib.bluetooth.CachedBluetoothDeviceManager; import com.android.settingslib.bluetooth.LocalBluetoothManager; +import com.android.settingslib.bluetooth.LocalBluetoothProfile; import java.util.Locale; @@ -64,6 +66,8 @@ public final class BluetoothPairingDialog extends AlertActivity implements private String mPairingKey; private EditText mPairingView; private Button mOkButton; + private LocalBluetoothProfile mPbapClientProfile; + /** * Dismiss the dialog if the bond state changes to bonded or none, @@ -109,6 +113,7 @@ public final class BluetoothPairingDialog extends AlertActivity implements return; } mCachedDeviceManager = mBluetoothManager.getCachedDeviceManager(); + mPbapClientProfile = mBluetoothManager.getProfileManager().getPbapClientProfile(); mDevice = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); mType = intent.getIntExtra(BluetoothDevice.EXTRA_PAIRING_VARIANT, BluetoothDevice.ERROR); @@ -188,6 +193,9 @@ public final class BluetoothPairingDialog extends AlertActivity implements R.id.phonebook_sharing_message_entry_pin); contactSharing.setText(getString(R.string.bluetooth_pairing_shares_phonebook, mCachedDeviceManager.getName(mDevice))); + if (mPbapClientProfile != null && mPbapClientProfile.isProfileReady()) { + contactSharing.setVisibility(View.GONE); + } if (mDevice.getPhonebookAccessPermission() == BluetoothDevice.ACCESS_ALLOWED) { contactSharing.setChecked(true); } else if (mDevice.getPhonebookAccessPermission() == BluetoothDevice.ACCESS_REJECTED){ @@ -261,6 +269,9 @@ public final class BluetoothPairingDialog extends AlertActivity implements R.id.phonebook_sharing_message_confirm_pin); contactSharing.setText(getString(R.string.bluetooth_pairing_shares_phonebook, mCachedDeviceManager.getName(mDevice))); + if (mPbapClientProfile != null && mPbapClientProfile.isProfileReady()) { + contactSharing.setVisibility(View.GONE); + } if (mDevice.getPhonebookAccessPermission() == BluetoothDevice.ACCESS_ALLOWED) { contactSharing.setChecked(true); } else if (mDevice.getPhonebookAccessPermission() == BluetoothDevice.ACCESS_REJECTED){