Merge "AudioEffect: make Descriptor not final"
diff --git a/api/current.txt b/api/current.txt
index 7dac82c..30599a5 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -26593,12 +26593,9 @@
field public static final int SUCCESS = 0; // 0x0
}
- public static final class AudioEffect.Descriptor implements android.os.Parcelable {
+ public static class AudioEffect.Descriptor {
ctor public AudioEffect.Descriptor();
ctor public AudioEffect.Descriptor(String, String, String, String, String);
- method public int describeContents();
- method public void writeToParcel(android.os.Parcel, int);
- field public static final android.os.Parcelable.Creator<android.media.audiofx.AudioEffect.Descriptor> CREATOR;
field public String connectMode;
field public String implementor;
field public String name;
diff --git a/api/test-current.txt b/api/test-current.txt
index d089831..eca7a7a 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -772,6 +772,11 @@
field public static final java.util.UUID EFFECT_TYPE_NULL;
}
+ public static class AudioEffect.Descriptor {
+ ctor public AudioEffect.Descriptor(android.os.Parcel);
+ method public void writeToParcel(android.os.Parcel);
+ }
+
public static interface AudioEffect.OnParameterChangeListener {
method public void onParameterChange(android.media.audiofx.AudioEffect, int, byte[], byte[]);
}
diff --git a/media/java/android/media/AudioRecordingConfiguration.java b/media/java/android/media/AudioRecordingConfiguration.java
index 52771e4..1d763ce 100644
--- a/media/java/android/media/AudioRecordingConfiguration.java
+++ b/media/java/android/media/AudioRecordingConfiguration.java
@@ -356,11 +356,11 @@
dest.writeInt(mDeviceSource);
dest.writeInt(mClientEffects.length);
for (int i = 0; i < mClientEffects.length; i++) {
- mClientEffects[i].writeToParcel(dest, 0);
+ mClientEffects[i].writeToParcel(dest);
}
dest.writeInt(mDeviceEffects.length);
for (int i = 0; i < mDeviceEffects.length; i++) {
- mDeviceEffects[i].writeToParcel(dest, 0);
+ mDeviceEffects[i].writeToParcel(dest);
}
}
@@ -375,13 +375,13 @@
mClientPortId = in.readInt();
mClientSilenced = in.readBoolean();
mDeviceSource = in.readInt();
- mClientEffects = AudioEffect.Descriptor.CREATOR.newArray(in.readInt());
+ mClientEffects = new AudioEffect.Descriptor[in.readInt()];
for (int i = 0; i < mClientEffects.length; i++) {
- mClientEffects[i] = AudioEffect.Descriptor.CREATOR.createFromParcel(in);
+ mClientEffects[i] = new AudioEffect.Descriptor(in);
}
- mDeviceEffects = AudioEffect.Descriptor.CREATOR.newArray(in.readInt());
- for (int i = 0; i < mClientEffects.length; i++) {
- mDeviceEffects[i] = AudioEffect.Descriptor.CREATOR.createFromParcel(in);
+ mDeviceEffects = new AudioEffect.Descriptor[in.readInt()];
+ for (int i = 0; i < mDeviceEffects.length; i++) {
+ mDeviceEffects[i] = new AudioEffect.Descriptor(in);
}
}
diff --git a/media/java/android/media/audiofx/AudioEffect.java b/media/java/android/media/audiofx/AudioEffect.java
index 52e9ae1..5b4bbce 100644
--- a/media/java/android/media/audiofx/AudioEffect.java
+++ b/media/java/android/media/audiofx/AudioEffect.java
@@ -26,7 +26,6 @@
import android.os.Looper;
import android.os.Message;
import android.os.Parcel;
-import android.os.Parcelable;
import android.util.Log;
import java.lang.ref.WeakReference;
@@ -229,7 +228,7 @@
* The method {@link #queryEffects()} returns an array of Descriptors to facilitate effects
* enumeration.
*/
- public static final class Descriptor implements Parcelable {
+ public static class Descriptor {
public Descriptor() {
}
@@ -294,7 +293,9 @@
this.implementor = implementor;
}
- private Descriptor(Parcel in) {
+ /** @hide */
+ @TestApi
+ public Descriptor(Parcel in) {
type = UUID.fromString(in.readString());
uuid = UUID.fromString(in.readString());
connectMode = in.readString();
@@ -302,33 +303,14 @@
implementor = in.readString();
}
- public static final Parcelable.Creator<Descriptor> CREATOR =
- new Parcelable.Creator<Descriptor>() {
- /**
- * Rebuilds a Descriptor previously stored with writeToParcel().
- * @param p Parcel object to read the Descriptor from
- * @return a new Descriptor created from the data in the parcel
- */
- public Descriptor createFromParcel(Parcel p) {
- return new Descriptor(p);
- }
- public Descriptor[] newArray(int size) {
- return new Descriptor[size];
- }
- };
-
@Override
public int hashCode() {
return Objects.hash(type, uuid, connectMode, name, implementor);
}
- @Override
- public int describeContents() {
- return 0;
- }
-
- @Override
- public void writeToParcel(Parcel dest, int flags) {
+ /** @hide */
+ @TestApi
+ public void writeToParcel(Parcel dest) {
dest.writeString(type.toString());
dest.writeString(uuid.toString());
dest.writeString(connectMode);