summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJaikumar Ganesh <jaikumar@google.com>2010-11-11 10:49:46 -0800
committerJaikumar Ganesh <jaikumar@google.com>2010-11-11 10:59:48 -0800
commitb0a1d01b4c044a0779cfe006e204bac468459802 (patch)
tree1e78ee7469a4da9721401d0285f3226345c250fd
parent4f66308170b8b0c65839044986ed0b69c10c8909 (diff)
downloadframeworks_base-b0a1d01b4c044a0779cfe006e204bac468459802.zip
frameworks_base-b0a1d01b4c044a0779cfe006e204bac468459802.tar.gz
frameworks_base-b0a1d01b4c044a0779cfe006e204bac468459802.tar.bz2
Make AUDIO_STATE_CONNECTING in BluetoothHeadset public.
As the SCO connection is done on a separate thread, this state is needed to prevent silent failures in case of APIs like voicerecognition. Change-Id: Id08725323a2c847df4d3bd9f60e42fde46100707
-rw-r--r--api/current.xml15
-rw-r--r--core/java/android/bluetooth/BluetoothHeadset.java24
2 files changed, 27 insertions, 12 deletions
diff --git a/api/current.xml b/api/current.xml
index 88d7b6a..504dab4 100644
--- a/api/current.xml
+++ b/api/current.xml
@@ -39747,14 +39747,14 @@
type="int"
transient="false"
volatile="false"
- value="10"
+ value="12"
static="true"
final="true"
deprecated="not deprecated"
visibility="public"
>
</field>
-<field name="STATE_AUDIO_DISCONNECTED"
+<field name="STATE_AUDIO_CONNECTING"
type="int"
transient="false"
volatile="false"
@@ -39765,6 +39765,17 @@
visibility="public"
>
</field>
+<field name="STATE_AUDIO_DISCONNECTED"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="10"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
<field name="VENDOR_SPECIFIC_HEADSET_EVENT_COMPANY_ID_CATEGORY"
type="java.lang.String"
transient="false"
diff --git a/core/java/android/bluetooth/BluetoothHeadset.java b/core/java/android/bluetooth/BluetoothHeadset.java
index f63a5c5..d5b0042 100644
--- a/core/java/android/bluetooth/BluetoothHeadset.java
+++ b/core/java/android/bluetooth/BluetoothHeadset.java
@@ -184,29 +184,29 @@ public final class BluetoothHeadset implements BluetoothProfile {
"android.bluetooth.headset.intent.category.companyid";
/**
- * Headset state when SCO audio is connected
+ * Headset state when SCO audio is not connected
* This state can be one of
* {@link #EXTRA_STATE} or {@link #EXTRA_PREVIOUS_STATE} of
* {@link #ACTION_AUDIO_STATE_CHANGED} intent.
*/
- public static final int STATE_AUDIO_CONNECTED = 10;
+ public static final int STATE_AUDIO_DISCONNECTED = 10;
/**
* Headset state when SCO audio is connecting
* This state can be one of
* {@link #EXTRA_STATE} or {@link #EXTRA_PREVIOUS_STATE} of
* {@link #ACTION_AUDIO_STATE_CHANGED} intent.
- * @hide
*/
- public static final int STATE_AUDIO_CONNECTING = 12;
+ public static final int STATE_AUDIO_CONNECTING = 11;
/**
- * Headset state when SCO audio is not connected
+ * Headset state when SCO audio is connected
* This state can be one of
* {@link #EXTRA_STATE} or {@link #EXTRA_PREVIOUS_STATE} of
* {@link #ACTION_AUDIO_STATE_CHANGED} intent.
*/
- public static final int STATE_AUDIO_DISCONNECTED = 11;
+ public static final int STATE_AUDIO_CONNECTED = 12;
+
private Context mContext;
private ServiceListener mServiceListener;
@@ -377,11 +377,15 @@ public final class BluetoothHeadset implements BluetoothProfile {
* audio connection.
*
* <p> Users can listen to {@link #ACTION_AUDIO_STATE_CHANGED}.
- * {@link #EXTRA_STATE} will be set to {@link #STATE_AUDIO_CONNECTED}
- * when the audio connection is established,
- * and to {@link #STATE_AUDIO_DISCONNECTED} in case of failure.
+ * If this function returns true, this intent will be broadcasted with
+ * {@link #EXTRA_STATE} set to {@link #STATE_AUDIO_CONNECTING}.
*
- * <p>Requires {@link android.Manifest.permission#BLUETOOTH}
+ * <p> {@link #EXTRA_STATE} will transition from
+ * {@link #STATE_AUDIO_CONNECTING} to {@link #STATE_AUDIO_CONNECTED} when
+ * audio connection is established and to {@link #STATE_AUDIO_DISCONNECTED}
+ * in case of failure to establish the audio connection.
+ *
+ * <p>Requires {@link android.Manifest.permission#BLUETOOTH} permission.
*
* @param device Bluetooth headset
* @return false if there is no headset connected of if the