diff options
| -rw-r--r-- | api/current.txt | 4 | ||||
| -rw-r--r-- | api/removed.txt | 4 | ||||
| -rw-r--r-- | api/system-current.txt | 4 | ||||
| -rw-r--r-- | api/system-removed.txt | 4 | ||||
| -rw-r--r-- | api/test-current.txt | 4 | ||||
| -rw-r--r-- | api/test-removed.txt | 4 | ||||
| -rw-r--r-- | media/java/android/media/AudioManager.java | 21 | ||||
| -rw-r--r-- | media/java/android/media/IAudioService.aidl | 2 | ||||
| -rw-r--r-- | media/java/android/media/IRecordingConfigDispatcher.aidl | 2 | ||||
| -rw-r--r-- | services/core/java/com/android/server/audio/AudioService.java | 2 | ||||
| -rw-r--r-- | services/core/java/com/android/server/audio/RecordingActivityMonitor.java | 15 |
11 files changed, 43 insertions, 23 deletions
diff --git a/api/current.txt b/api/current.txt index 17182dbde4ce..30b5be45a0a8 100644 --- a/api/current.txt +++ b/api/current.txt @@ -19584,7 +19584,7 @@ package android.media { method public void adjustVolume(int, int); method public void dispatchMediaKeyEvent(android.view.KeyEvent); method public int generateAudioSessionId(); - method public android.media.AudioRecordingConfiguration[] getActiveRecordingConfigurations(); + method public java.util.List<android.media.AudioRecordingConfiguration> getActiveRecordingConfigurations(); method public android.media.AudioDeviceInfo[] getDevices(int); method public int getMode(); method public java.lang.String getParameters(java.lang.String); @@ -19730,7 +19730,7 @@ package android.media { public static abstract class AudioManager.AudioRecordingCallback { ctor public AudioManager.AudioRecordingCallback(); - method public void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]); + method public void onRecordingConfigChanged(java.util.List<android.media.AudioRecordingConfiguration>); } public static abstract interface AudioManager.OnAudioFocusChangeListener { diff --git a/api/removed.txt b/api/removed.txt index 42c64ea62cce..73a439c82d48 100644 --- a/api/removed.txt +++ b/api/removed.txt @@ -196,6 +196,10 @@ package android.media { ctor public AudioFormat(); } + public static abstract class AudioManager.AudioRecordingCallback { + method public deprecated void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]); + } + } package android.media.tv { diff --git a/api/system-current.txt b/api/system-current.txt index 9bccb9ebc837..673cbba06c02 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -21091,7 +21091,7 @@ package android.media { method public void adjustVolume(int, int); method public void dispatchMediaKeyEvent(android.view.KeyEvent); method public int generateAudioSessionId(); - method public android.media.AudioRecordingConfiguration[] getActiveRecordingConfigurations(); + method public java.util.List<android.media.AudioRecordingConfiguration> getActiveRecordingConfigurations(); method public android.media.AudioDeviceInfo[] getDevices(int); method public int getMode(); method public java.lang.String getParameters(java.lang.String); @@ -21245,7 +21245,7 @@ package android.media { public static abstract class AudioManager.AudioRecordingCallback { ctor public AudioManager.AudioRecordingCallback(); - method public void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]); + method public void onRecordingConfigChanged(java.util.List<android.media.AudioRecordingConfiguration>); } public static abstract interface AudioManager.OnAudioFocusChangeListener { diff --git a/api/system-removed.txt b/api/system-removed.txt index 4873605d4e1d..0a758f81655f 100644 --- a/api/system-removed.txt +++ b/api/system-removed.txt @@ -194,6 +194,10 @@ package android.media { ctor public AudioFormat(); } + public static abstract class AudioManager.AudioRecordingCallback { + method public deprecated void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]); + } + } package android.media.tv { diff --git a/api/test-current.txt b/api/test-current.txt index 13a96e013670..cc0f3e50d6b2 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -19653,7 +19653,7 @@ package android.media { method public void adjustVolume(int, int); method public void dispatchMediaKeyEvent(android.view.KeyEvent); method public int generateAudioSessionId(); - method public android.media.AudioRecordingConfiguration[] getActiveRecordingConfigurations(); + method public java.util.List<android.media.AudioRecordingConfiguration> getActiveRecordingConfigurations(); method public android.media.AudioDeviceInfo[] getDevices(int); method public int getMode(); method public java.lang.String getParameters(java.lang.String); @@ -19799,7 +19799,7 @@ package android.media { public static abstract class AudioManager.AudioRecordingCallback { ctor public AudioManager.AudioRecordingCallback(); - method public void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]); + method public void onRecordingConfigChanged(java.util.List<android.media.AudioRecordingConfiguration>); } public static abstract interface AudioManager.OnAudioFocusChangeListener { diff --git a/api/test-removed.txt b/api/test-removed.txt index 42c64ea62cce..73a439c82d48 100644 --- a/api/test-removed.txt +++ b/api/test-removed.txt @@ -196,6 +196,10 @@ package android.media { ctor public AudioFormat(); } + public static abstract class AudioManager.AudioRecordingCallback { + method public deprecated void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]); + } + } package android.media.tv { diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index 23ae691ddca9..7178313485b8 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -2747,11 +2747,18 @@ public class AudioManager { */ public static abstract class AudioRecordingCallback { /** + * This method is deprecated, override {@link #onRecordingConfigChanged(List)} instead. + * @param configs + * @removed + */ + @Deprecated + public void onRecordingConfigChanged(AudioRecordingConfiguration[] configs) {} + /** * Called whenever the device recording configuration has changed. - * @param configs array containing the results of + * @param configs list containing the results of * {@link AudioManager#getActiveRecordingConfigurations()}. */ - public void onRecordingConfigChanged(AudioRecordingConfiguration[] configs) {} + public void onRecordingConfigChanged(List<AudioRecordingConfiguration> configs) {} } private static class AudioRecordingCallbackInfo { @@ -2765,10 +2772,10 @@ public class AudioManager { private final static class RecordConfigChangeCallbackData { final AudioRecordingCallback mCb; - final AudioRecordingConfiguration[] mConfigs; + final List<AudioRecordingConfiguration> mConfigs; RecordConfigChangeCallbackData(AudioRecordingCallback cb, - AudioRecordingConfiguration[] configs) { + List<AudioRecordingConfiguration> configs) { mCb = cb; mConfigs = configs; } @@ -2848,10 +2855,10 @@ public class AudioManager { /** * Returns the current active audio recording configurations of the device. - * @return a non-null array of recording configurations. An array of length 0 indicates there is + * @return a non-null list of recording configurations. An empty list indicates there is * no recording active when queried. */ - public @NonNull AudioRecordingConfiguration[] getActiveRecordingConfigurations() { + public @NonNull List<AudioRecordingConfiguration> getActiveRecordingConfigurations() { final IAudioService service = getService(); try { return service.getActiveRecordingConfigurations(); @@ -2909,7 +2916,7 @@ public class AudioManager { private final IRecordingConfigDispatcher mRecCb = new IRecordingConfigDispatcher.Stub() { - public void dispatchRecordingConfigChange(AudioRecordingConfiguration[] configs) { + public void dispatchRecordingConfigChange(List<AudioRecordingConfiguration> configs) { synchronized(mRecordCallbackLock) { if (mRecordCallbackList != null) { for (int i=0 ; i < mRecordCallbackList.size() ; i++) { diff --git a/media/java/android/media/IAudioService.aidl b/media/java/android/media/IAudioService.aidl index 97f670b17114..c7931fcd297b 100644 --- a/media/java/android/media/IAudioService.aidl +++ b/media/java/android/media/IAudioService.aidl @@ -164,5 +164,5 @@ interface IAudioService { oneway void unregisterRecordingCallback(in IRecordingConfigDispatcher rcdb); - AudioRecordingConfiguration[] getActiveRecordingConfigurations(); + List<AudioRecordingConfiguration> getActiveRecordingConfigurations(); } diff --git a/media/java/android/media/IRecordingConfigDispatcher.aidl b/media/java/android/media/IRecordingConfigDispatcher.aidl index e8032831af88..f4e98b20af7c 100644 --- a/media/java/android/media/IRecordingConfigDispatcher.aidl +++ b/media/java/android/media/IRecordingConfigDispatcher.aidl @@ -25,6 +25,6 @@ import android.media.AudioRecordingConfiguration; */ oneway interface IRecordingConfigDispatcher { - void dispatchRecordingConfigChange(in AudioRecordingConfiguration[] configs); + void dispatchRecordingConfigChange(in List<AudioRecordingConfiguration> configs); } diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java index 0874fa7a58e5..7777ae23ff29 100644 --- a/services/core/java/com/android/server/audio/AudioService.java +++ b/services/core/java/com/android/server/audio/AudioService.java @@ -6342,7 +6342,7 @@ public class AudioService extends IAudioService.Stub { mRecordMonitor.unregisterRecordingCallback(rcdb); } - public AudioRecordingConfiguration[] getActiveRecordingConfigurations() { + public List<AudioRecordingConfiguration> getActiveRecordingConfigurations() { return mRecordMonitor.getActiveRecordingConfigurations(); } diff --git a/services/core/java/com/android/server/audio/RecordingActivityMonitor.java b/services/core/java/com/android/server/audio/RecordingActivityMonitor.java index 7a085e143599..57d55de8d002 100644 --- a/services/core/java/com/android/server/audio/RecordingActivityMonitor.java +++ b/services/core/java/com/android/server/audio/RecordingActivityMonitor.java @@ -29,6 +29,7 @@ import android.util.Log; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; +import java.util.List; /** * Class to receive and dispatch updates from AudioSystem about recording configurations. @@ -54,7 +55,7 @@ public final class RecordingActivityMonitor implements AudioSystem.AudioRecordin if (MediaRecorder.isSystemOnlyAudioSource(source)) { return; } - final AudioRecordingConfiguration[] configs = + final List<AudioRecordingConfiguration> configs = updateSnapshot(event, session, source, recordingInfo); if (configs != null){ synchronized(mClients) { @@ -104,9 +105,9 @@ public final class RecordingActivityMonitor implements AudioSystem.AudioRecordin } } - AudioRecordingConfiguration[] getActiveRecordingConfigurations() { + List<AudioRecordingConfiguration> getActiveRecordingConfigurations() { synchronized(mRecordConfigs) { - return mRecordConfigs.values().toArray(new AudioRecordingConfiguration[0]); + return new ArrayList<AudioRecordingConfiguration>(mRecordConfigs.values()); } } @@ -118,13 +119,13 @@ public final class RecordingActivityMonitor implements AudioSystem.AudioRecordin * @param recordingFormat see * {@link AudioSystem.AudioRecordingCallback#onRecordingConfigurationChanged(int, int, int, int[])} * for the definition of the contents of the array - * @return null if the list of active recording sessions has not been modified, an array + * @return null if the list of active recording sessions has not been modified, a list * with the current active configurations otherwise. */ - private AudioRecordingConfiguration[] updateSnapshot(int event, int session, int source, + private List<AudioRecordingConfiguration> updateSnapshot(int event, int session, int source, int[] recordingInfo) { final boolean configChanged; - final AudioRecordingConfiguration[] configs; + final ArrayList<AudioRecordingConfiguration> configs; synchronized(mRecordConfigs) { switch (event) { case AudioManager.RECORD_CONFIG_EVENT_STOP: @@ -171,7 +172,7 @@ public final class RecordingActivityMonitor implements AudioSystem.AudioRecordin configChanged = false; } if (configChanged) { - configs = mRecordConfigs.values().toArray(new AudioRecordingConfiguration[0]); + configs = new ArrayList<AudioRecordingConfiguration>(mRecordConfigs.values()); } else { configs = null; } |