Package org.robolectric.shadows
Class ShadowBluetoothHeadset
java.lang.Object
org.robolectric.shadows.ShadowBluetoothHeadset
@NotThreadSafe @Implements(android.bluetooth.BluetoothHeadset.class) public class ShadowBluetoothHeadset extends Object
Shadow for
BluetoothHeadset
-
Constructor Summary
Constructors Constructor Description ShadowBluetoothHeadset()
-
Method Summary
Modifier and Type Method Description void
addConnectedDevice(BluetoothDevice device)
Adds the given BluetoothDevice to the shadow's list of "connected devices"protected List<BluetoothDevice>
getConnectedDevices()
Overrides behavior ofgetConnectedDevices()
.protected int
getConnectionState(BluetoothDevice device)
Overrides behavior ofgetConnectionState(android.bluetooth.BluetoothDevice)
.protected boolean
isAudioConnected(BluetoothDevice bluetoothDevice)
protected boolean
sendVendorSpecificResultCode(BluetoothDevice device, String command, String arg)
void
setAllowsSendVendorSpecificResultCode(boolean allowsSendVendorSpecificResultCode)
protected boolean
startVoiceRecognition(BluetoothDevice bluetoothDevice)
Overrides behavior ofstartVoiceRecognition(android.bluetooth.BluetoothDevice)
.protected boolean
stopVoiceRecognition(BluetoothDevice bluetoothDevice)
Overrides the behavior ofstopVoiceRecognition(android.bluetooth.BluetoothDevice)
.
-
Constructor Details
-
ShadowBluetoothHeadset
public ShadowBluetoothHeadset()
-
-
Method Details
-
getConnectedDevices
Overrides behavior ofgetConnectedDevices()
. Returns list of devices that is set up by call(s) toaddConnectedDevice(android.bluetooth.BluetoothDevice)
. Returns an empty list by default. -
addConnectedDevice
Adds the given BluetoothDevice to the shadow's list of "connected devices" -
getConnectionState
Overrides behavior ofgetConnectionState(android.bluetooth.BluetoothDevice)
.- Returns:
BluetoothProfile.STATE_CONNECTED
if the given device has been previously added by a call toaddConnectedDevice(android.bluetooth.BluetoothDevice)
, andBluetoothProfile.STATE_DISCONNECTED
otherwise.
-
startVoiceRecognition
Overrides behavior ofstartVoiceRecognition(android.bluetooth.BluetoothDevice)
. Returns false if 'bluetoothDevice' is null or voice recognition is already started. Users can listen toACTION_AUDIO_STATE_CHANGED
. If this function returns true, this intent will be broadcasted once withBluetoothProfile.EXTRA_STATE
set toSTATE_AUDIO_CONNECTING
and once set toSTATE_AUDIO_CONNECTED
. -
stopVoiceRecognition
Overrides the behavior ofstopVoiceRecognition(android.bluetooth.BluetoothDevice)
. Returns false if voice recognition was not started or voice recogntion has already ended on this headset. If this function returns true,ACTION_AUDIO_STATE_CHANGED
intent is broadcasted withBluetoothProfile.EXTRA_STATE
set toSTATE_DISCONNECTED
. -
isAudioConnected
-
sendVendorSpecificResultCode
@Implementation(minSdk=19) protected boolean sendVendorSpecificResultCode(BluetoothDevice device, String command, String arg)Overrides behavior ofsendVendorSpecificResultCode(android.bluetooth.BluetoothDevice,java.lang.String,java.lang.String)
.- Returns:
- 'true' only if the given device has been previously added by a call to
addConnectedDevice(android.bluetooth.BluetoothDevice)
andsetAllowsSendVendorSpecificResultCode(boolean)
has not been called with 'false' argument. - Throws:
IllegalArgumentException
- if 'command' argument is null, per Android API
-
setAllowsSendVendorSpecificResultCode
public void setAllowsSendVendorSpecificResultCode(boolean allowsSendVendorSpecificResultCode)Affects the behavior ofBluetoothHeadset.sendVendorSpecificResultCode(android.bluetooth.BluetoothDevice, java.lang.String, java.lang.String)
- Parameters:
allowsSendVendorSpecificResultCode
- can be set to 'false' to simulate the situation where the system is unable to send vendor-specific result codes to a device
-