Merge "Unhide API additions to AudioManager for AudioFocus support."
diff --git a/api/current.xml b/api/current.xml
index dd0a804..e273cd2 100644
--- a/api/current.xml
+++ b/api/current.xml
@@ -80262,6 +80262,19 @@
deprecated="not deprecated"
visibility="public"
>
+<method name="abandonAudioFocus"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="l" type="android.media.AudioManager.OnAudioFocusChangeListener">
+</parameter>
+</method>
<method name="adjustStreamVolume"
return="void"
abstract="false"
@@ -80503,6 +80516,36 @@
<parameter name="volume" type="float">
</parameter>
</method>
+<method name="registerAudioFocusListener"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="l" type="android.media.AudioManager.OnAudioFocusChangeListener">
+</parameter>
+</method>
+<method name="requestAudioFocus"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="l" type="android.media.AudioManager.OnAudioFocusChangeListener">
+</parameter>
+<parameter name="streamType" type="int">
+</parameter>
+<parameter name="durationHint" type="int">
+</parameter>
+</method>
<method name="setBluetoothA2dpOn"
return="void"
abstract="false"
@@ -80710,6 +80753,19 @@
visibility="public"
>
</method>
+<method name="unregisterAudioFocusListener"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="l" type="android.media.AudioManager.OnAudioFocusChangeListener">
+</parameter>
+</method>
<field name="ACTION_AUDIO_BECOMING_NOISY"
type="java.lang.String"
transient="false"
@@ -80754,6 +80810,72 @@
visibility="public"
>
</field>
+<field name="AUDIOFOCUS_GAIN"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="1"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="AUDIOFOCUS_GAIN_TRANSIENT"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="2"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="AUDIOFOCUS_LOSS"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="-1"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="AUDIOFOCUS_LOSS_TRANSIENT"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="-2"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="AUDIOFOCUS_REQUEST_FAILED"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="0"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="AUDIOFOCUS_REQUEST_GRANTED"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="1"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
<field name="EXTRA_RINGER_MODE"
type="java.lang.String"
transient="false"
@@ -81283,6 +81405,27 @@
>
</field>
</class>
+<interface name="AudioManager.OnAudioFocusChangeListener"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<method name="onAudioFocusChanged"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="focusChange" type="int">
+</parameter>
+</method>
+</interface>
<class name="AudioRecord"
extends="java.lang.Object"
abstract="false"
diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java
index b0a179f..4fa3327 100644
--- a/media/java/android/media/AudioManager.java
+++ b/media/java/android/media/AudioManager.java
@@ -1132,41 +1132,31 @@
}
/**
- * TODO unhide for SDK
* Used to indicate a loss of audio focus of unknown duration.
* @see OnAudioFocusChangeListener#onAudioFocusChanged(int)
- * {@hide}
*/
public static final int AUDIOFOCUS_LOSS = -1;
/**
- * TODO unhide for SDK
* Used to indicate a transient loss of audio focus.
* @see OnAudioFocusChangeListener#onAudioFocusChanged(int)
- * {@hide}
*/
public static final int AUDIOFOCUS_LOSS_TRANSIENT = -2;
/**
- * TODO unhide for SDK
* Used to indicate a gain of audio focus, or a request of audio focus, of unknown duration.
* @see OnAudioFocusChangeListener#onAudioFocusChanged(int)
* @see #requestAudioFocus(OnAudioFocusChangeListener, int, int)
- * {@hide}
*/
public static final int AUDIOFOCUS_GAIN = 1;
/**
- * TODO unhide for SDK
* Used to indicate a temporary gain or request of audio focus, anticipated to last a short
* amount of time. Examples of temporary changes are the playback of driving directions, or an
* event notification.
* @see OnAudioFocusChangeListener#onAudioFocusChanged(int)
* @see #requestAudioFocus(OnAudioFocusChangeListener, int, int)
- * {@hide}
*/
public static final int AUDIOFOCUS_GAIN_TRANSIENT = 2;
/**
- * TODO unhide for SDK
- * {@hide}
* Interface definition for a callback to be invoked when the audio focus of the system is
* updated.
*/
@@ -1267,8 +1257,6 @@
}
/**
- * TODO unhide for SDK
- * {@hide}
* Register a listener for audio focus updates.
*/
public void registerAudioFocusListener(OnAudioFocusChangeListener l) {
@@ -1284,9 +1272,7 @@
}
/**
- * TODO unhide for SDK
* TODO document for SDK
- * {@hide}
*/
public void unregisterAudioFocusListener(OnAudioFocusChangeListener l) {
// notify service to remove it from audio focus stack
@@ -1304,22 +1290,16 @@
/**
- * TODO unhide for SDK
* TODO document for SDK
- * {@hide}
*/
public static final int AUDIOFOCUS_REQUEST_FAILED = 0;
/**
- * TODO unhide for SDK
* TODO document for SDK
- * {@hide}
*/
public static final int AUDIOFOCUS_REQUEST_GRANTED = 1;
/**
- * TODO unhide for SDK
- * {@hide}
* Request audio focus.
* Send a request to obtain the audio focus for a specific stream type
* @param l the listener to be notified of audio focus changes
@@ -1347,9 +1327,7 @@
/**
- * TODO unhide for SDK
* TODO document for SDK
- * {@hide}
* Abandon audio focus.
* @return {@link #AUDIOFOCUS_REQUEST_FAILED} or {@link #AUDIOFOCUS_REQUEST_GRANTED}
*/