Fix issue 2242614: Wired headset not recognized: bogus "state" in ACTION_HEADSET_PLUG broadcast.
The headset state indicated by HeadsetObserver in the broadcast intent ACTION_HEADSET_PLUG was not 0 or 1 as specified in the java doc but contained a bit field indicating the type of headset connected. Modified HeadsetObserver to broacast a state conforming to java doc. Added an extra to intent ACTION_HEADSET_PLUG to indicate if headset has a microphone or not. Removed handling of non standard headset indications from HeadsetObserver. Removed platform specific devices from output devices defined in AudioSystem. Modified AudioService to use new ACTION_HEADSET_PLUG intent extra instead of bitfield in state.
This commit is contained in:
@@ -243,9 +243,6 @@ public class AudioSystem
|
||||
public static final int DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES = 0x100;
|
||||
public static final int DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER = 0x200;
|
||||
public static final int DEVICE_OUT_AUX_DIGITAL = 0x400;
|
||||
public static final int DEVICE_OUT_FM_HEADPHONE = 0x800;
|
||||
public static final int DEVICE_OUT_FM_SPEAKER = 0x1000;
|
||||
public static final int DEVICE_OUT_TTY = 0x2000;
|
||||
public static final int DEVICE_OUT_DEFAULT = 0x8000;
|
||||
// input devices
|
||||
public static final int DEVICE_IN_COMMUNICATION = 0x10000;
|
||||
|
||||
Reference in New Issue
Block a user