aboutsummaryrefslogtreecommitdiff
path: root/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/bluetooth/BluetoothHeadsetFragment.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/bluetooth/BluetoothHeadsetFragment.java')
-rw-r--r--tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/bluetooth/BluetoothHeadsetFragment.java31
1 files changed, 28 insertions, 3 deletions
diff --git a/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/bluetooth/BluetoothHeadsetFragment.java b/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/bluetooth/BluetoothHeadsetFragment.java
index 30804feb08..cb668c49b6 100644
--- a/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/bluetooth/BluetoothHeadsetFragment.java
+++ b/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/bluetooth/BluetoothHeadsetFragment.java
@@ -57,15 +57,17 @@ public class BluetoothHeadsetFragment extends Fragment {
Button mScoConnect;
Button mScoDisconnect;
Button mEnableQuietMode;
+ Button mHoldCall;
BluetoothHeadsetClient mHfpClientProfile;
// Intent for picking a Bluetooth device
- public static final String DEVICE_PICKER_ACTION = "android.bluetooth.devicepicker.action.LAUNCH";
+ public static final String DEVICE_PICKER_ACTION =
+ "android.bluetooth.devicepicker.action.LAUNCH";
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container,
- @Nullable Bundle savedInstanceState) {
+ @Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.bluetooth_headset, container, false);
mPickedDeviceText = (TextView) v.findViewById(R.id.bluetooth_device);
@@ -73,8 +75,9 @@ public class BluetoothHeadsetFragment extends Fragment {
mConnect = (Button) v.findViewById(R.id.bluetooth_headset_connect);
mDisconnect = (Button) v.findViewById(R.id.bluetooth_headset_disconnect);
mScoConnect = (Button) v.findViewById(R.id.bluetooth_sco_connect);
- mScoDisconnect= (Button) v.findViewById(R.id.bluetooth_sco_disconnect);
+ mScoDisconnect = (Button) v.findViewById(R.id.bluetooth_sco_disconnect);
mEnableQuietMode = (Button) v.findViewById(R.id.bluetooth_quiet_mode_enable);
+ mHoldCall = (Button) v.findViewById(R.id.bluetooth_hold_call);
// Pick a bluetooth device
mDevicePicker.setOnClickListener(new View.OnClickListener() {
@@ -123,6 +126,14 @@ public class BluetoothHeadsetFragment extends Fragment {
mBluetoothAdapter.enableNoAutoConnect();
}
});
+
+ // Place the current call on hold
+ mHoldCall.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ holdCall();
+ }
+ });
return v;
}
@@ -192,6 +203,20 @@ public class BluetoothHeadsetFragment extends Fragment {
mHfpClientProfile.disconnectAudio(mPickedDevice);
}
+ void holdCall() {
+ if (mPickedDevice == null) {
+ Log.w(TAG, "Device null when trying to put the call on hold!");
+ return;
+ }
+
+ if (mHfpClientProfile == null) {
+ Log.w(TAG, "HFP Profile proxy not available, cannot put the call on hold " +
+ mPickedDevice);
+ return;
+ }
+ mHfpClientProfile.holdCall(mPickedDevice);
+ }
+
private final BroadcastReceiver mPickerReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {