Bluetooth: Give PBAP permission only if device is AUDIO_VIDEO_HANDSFREE
Step by step: 1. Pair and connect with BTHS (e.g. SBH50). 2. Click the settings icon of paired device, and check "Use for" items. ----------------------------------------------------------------- Expected Result: After step 2, "Contact sharing" should not be checked. Actual Result: After step 2, "Contact sharing" is checked. Fix: Set phone book permission as REJECTED if class of Device is not AUDIO_VIDEO_HANDSFREE Test: Checked above usecase and issue is not observed Bug: 64372703 Change-Id: I178a09dd9e76d67c461c4b04d9b2ee0078ed24c9
This commit is contained in:
committed by
Myles Watson
parent
8aeb69396d
commit
5b84cfae44
@@ -171,6 +171,22 @@ public class BluetoothPairingController implements OnCheckedChangeListener,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update Phone book permission
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public void setContactSharingState() {
|
||||||
|
if ((mDevice.getPhonebookAccessPermission() != BluetoothDevice.ACCESS_ALLOWED)
|
||||||
|
&& (mDevice.getPhonebookAccessPermission() != BluetoothDevice.ACCESS_REJECTED)) {
|
||||||
|
if (mDevice.getBluetoothClass().getDeviceClass()
|
||||||
|
== BluetoothClass.Device.AUDIO_VIDEO_HANDSFREE) {
|
||||||
|
onCheckedChanged(null, true);
|
||||||
|
} else {
|
||||||
|
onCheckedChanged(null, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A method for querying if the provided editable is a valid passkey/pin format for this device.
|
* A method for querying if the provided editable is a valid passkey/pin format for this device.
|
||||||
*
|
*
|
||||||
|
@@ -224,6 +224,7 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i
|
|||||||
|
|
||||||
contactSharing.setVisibility(mPairingController.isProfileReady()
|
contactSharing.setVisibility(mPairingController.isProfileReady()
|
||||||
? View.GONE : View.VISIBLE);
|
? View.GONE : View.VISIBLE);
|
||||||
|
mPairingController.setContactSharingState();
|
||||||
contactSharing.setOnCheckedChangeListener(mPairingController);
|
contactSharing.setOnCheckedChangeListener(mPairingController);
|
||||||
contactSharing.setChecked(mPairingController.getContactSharingState());
|
contactSharing.setChecked(mPairingController.getContactSharingState());
|
||||||
|
|
||||||
@@ -314,6 +315,7 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i
|
|||||||
|
|
||||||
contactSharing.setVisibility(
|
contactSharing.setVisibility(
|
||||||
mPairingController.isProfileReady() ? View.GONE : View.VISIBLE);
|
mPairingController.isProfileReady() ? View.GONE : View.VISIBLE);
|
||||||
|
mPairingController.setContactSharingState();
|
||||||
contactSharing.setChecked(mPairingController.getContactSharingState());
|
contactSharing.setChecked(mPairingController.getContactSharingState());
|
||||||
contactSharing.setOnCheckedChangeListener(mPairingController);
|
contactSharing.setOnCheckedChangeListener(mPairingController);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user