Merge "Add Ramping Ringer platform flags and fix some Ringtone bugs."
diff --git a/api/system-current.txt b/api/system-current.txt
index cdd2d80..69dc608 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -5556,6 +5556,12 @@
method public void onPropertyChanged(String, String, String);
}
+ public static interface DeviceConfig.Telephony {
+ field public static final String NAMESPACE = "telephony";
+ field public static final String PROPERTY_ENABLE_RAMPING_RINGER = "enable_ramping_ringer";
+ field public static final String PROPERTY_RAMPING_RINGER_DURATION = "ramping_duration";
+ }
+
public final class DocumentsContract {
method public static boolean isManageMode(android.net.Uri);
method public static android.net.Uri setManageMode(android.net.Uri);
diff --git a/core/java/android/provider/DeviceConfig.java b/core/java/android/provider/DeviceConfig.java
index cd3efb4..87efbf3 100644
--- a/core/java/android/provider/DeviceConfig.java
+++ b/core/java/android/provider/DeviceConfig.java
@@ -103,6 +103,24 @@
@SystemApi
public static final String NAMESPACE_NOTIFICATION_ASSISTANT = "notification_assistant";
+ /**
+ * Telephony related properties definitions.
+ *
+ * @hide
+ */
+ @SystemApi
+ public interface Telephony {
+ String NAMESPACE = "telephony";
+ /**
+ * Whether to apply ramping ringer on incoming phone calls.
+ */
+ String PROPERTY_ENABLE_RAMPING_RINGER = "enable_ramping_ringer";
+ /**
+ * Ringer ramping time in milliseconds.
+ */
+ String PROPERTY_RAMPING_RINGER_DURATION = "ramping_duration";
+ }
+
private static final Object sLock = new Object();
@GuardedBy("sLock")
private static Map<OnPropertyChangedListener, Pair<String, Executor>> sListeners =
diff --git a/media/java/android/media/Ringtone.java b/media/java/android/media/Ringtone.java
index 42597aa..73d3d88 100644
--- a/media/java/android/media/Ringtone.java
+++ b/media/java/android/media/Ringtone.java
@@ -138,7 +138,7 @@
mAudioAttributes = attributes;
// The audio attributes have to be set before the media player is prepared.
// Re-initialize it.
- setUri(mUri);
+ setUri(mUri, mVolumeShaperConfig);
}
/**
@@ -415,6 +415,7 @@
mLocalPlayer.reset();
mLocalPlayer.release();
mLocalPlayer = null;
+ mVolumeShaper = null;
synchronized (sActiveRingtones) {
sActiveRingtones.remove(this);
}