Loading core/api/current.txt +13 −0 Original line number Diff line number Diff line Loading @@ -23977,6 +23977,19 @@ package android.media.effect { } package android.media.metrics { public class MediaMetricsManager { method @NonNull public android.media.metrics.PlaybackSession createPlaybackSession(); } public final class PlaybackSession implements java.lang.AutoCloseable { method public void close(); method @NonNull public String getId(); } } package android.media.midi { public final class MidiDevice implements java.io.Closeable { media/java/android/media/metrics/IPlaybackMetricsManager.aidl→media/java/android/media/metrics/IMediaMetricsManager.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ import android.media.metrics.TrackChangeEvent; * Interface to the playback manager service. * @hide */ interface IPlaybackMetricsManager { interface IMediaMetricsManager { void reportPlaybackMetrics(in String sessionId, in PlaybackMetrics metrics, int userId); String getSessionId(int userId); void reportNetworkEvent(in String sessionId, in NetworkEvent event, int userId); Loading media/java/android/media/metrics/PlaybackMetricsManager.java→media/java/android/media/metrics/MediaMetricsManager.java +7 −6 Original line number Diff line number Diff line Loading @@ -20,19 +20,19 @@ import android.annotation.NonNull; import android.os.RemoteException; /** * @hide * This class gives information about, and interacts with media metrics. */ public class PlaybackMetricsManager { public class MediaMetricsManager { // TODO: unhide APIs. private static final String TAG = "PlaybackMetricsManager"; private static final String TAG = "MediaMetricsManager"; private IPlaybackMetricsManager mService; private IMediaMetricsManager mService; private int mUserId; /** * @hide */ public PlaybackMetricsManager(IPlaybackMetricsManager service, int userId) { public MediaMetricsManager(IMediaMetricsManager service, int userId) { mService = service; mUserId = userId; } Loading Loading @@ -87,7 +87,8 @@ public class PlaybackMetricsManager { /** * Creates a playback session. */ public PlaybackSession createSession() { @NonNull public PlaybackSession createPlaybackSession() { try { String id = mService.getSessionId(mUserId); PlaybackSession session = new PlaybackSession(id, this); Loading media/java/android/media/metrics/PlaybackSession.java +9 −4 Original line number Diff line number Diff line Loading @@ -24,11 +24,11 @@ import com.android.internal.util.AnnotationValidations; import java.util.Objects; /** * @hide * An instances of this class represents a session of media playback. */ public final class PlaybackSession implements AutoCloseable { private final @NonNull String mId; private final @NonNull PlaybackMetricsManager mManager; private final @NonNull MediaMetricsManager mManager; private boolean mClosed = false; /** Loading @@ -36,7 +36,7 @@ public final class PlaybackSession implements AutoCloseable { * * @hide */ public PlaybackSession(@NonNull String id, @NonNull PlaybackMetricsManager manager) { public PlaybackSession(@NonNull String id, @NonNull MediaMetricsManager manager) { mId = id; mManager = manager; AnnotationValidations.validate(NonNull.class, null, mId); Loading @@ -45,6 +45,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports playback metrics. * @hide */ public void reportPlaybackMetrics(@NonNull PlaybackMetrics metrics) { mManager.reportPlaybackMetrics(mId, metrics); Loading @@ -52,6 +53,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports error event. * @hide */ public void reportPlaybackErrorEvent(PlaybackErrorEvent event) { mManager.reportPlaybackErrorEvent(mId, event); Loading @@ -59,6 +61,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports network event. * @hide */ public void reportNetworkEvent(NetworkEvent event) { mManager.reportNetworkEvent(mId, event); Loading @@ -66,6 +69,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports playback state event. * @hide */ public void reportPlaybackStateEvent(PlaybackStateEvent event) { mManager.reportPlaybackStateEvent(mId, event); Loading @@ -73,6 +77,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports track change event. * @hide */ public void reportTrackChangeEvent(TrackChangeEvent event) { mManager.reportTrackChangeEvent(mId, event); Loading @@ -96,7 +101,7 @@ public final class PlaybackSession implements AutoCloseable { } @Override public void close() throws Exception { public void close() { mClosed = true; } } services/core/java/com/android/server/media/metrics/PlaybackMetricsManagerService.java→services/core/java/com/android/server/media/metrics/MediaMetricsManagerService.java +5 −5 Original line number Diff line number Diff line Loading @@ -17,7 +17,7 @@ package com.android.server.media.metrics; import android.content.Context; import android.media.metrics.IPlaybackMetricsManager; import android.media.metrics.IMediaMetricsManager; import android.media.metrics.NetworkEvent; import android.media.metrics.PlaybackErrorEvent; import android.media.metrics.PlaybackMetrics; Loading @@ -33,9 +33,9 @@ import com.android.server.SystemService; import java.security.SecureRandom; /** * System service manages playback metrics. * System service manages media metrics. */ public final class PlaybackMetricsManagerService extends SystemService { public final class MediaMetricsManagerService extends SystemService { private final SecureRandom mSecureRandom; /** Loading @@ -43,7 +43,7 @@ public final class PlaybackMetricsManagerService extends SystemService { * * @param context The system server context. */ public PlaybackMetricsManagerService(Context context) { public MediaMetricsManagerService(Context context) { super(context); mSecureRandom = new SecureRandom(); } Loading @@ -54,7 +54,7 @@ public final class PlaybackMetricsManagerService extends SystemService { publishBinderService("playback_metrics", new BinderService()); } private final class BinderService extends IPlaybackMetricsManager.Stub { private final class BinderService extends IMediaMetricsManager.Stub { @Override public void reportPlaybackMetrics(String sessionId, PlaybackMetrics metrics, int userId) { StatsEvent statsEvent = StatsEvent.newBuilder() Loading Loading
core/api/current.txt +13 −0 Original line number Diff line number Diff line Loading @@ -23977,6 +23977,19 @@ package android.media.effect { } package android.media.metrics { public class MediaMetricsManager { method @NonNull public android.media.metrics.PlaybackSession createPlaybackSession(); } public final class PlaybackSession implements java.lang.AutoCloseable { method public void close(); method @NonNull public String getId(); } } package android.media.midi { public final class MidiDevice implements java.io.Closeable {
media/java/android/media/metrics/IPlaybackMetricsManager.aidl→media/java/android/media/metrics/IMediaMetricsManager.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ import android.media.metrics.TrackChangeEvent; * Interface to the playback manager service. * @hide */ interface IPlaybackMetricsManager { interface IMediaMetricsManager { void reportPlaybackMetrics(in String sessionId, in PlaybackMetrics metrics, int userId); String getSessionId(int userId); void reportNetworkEvent(in String sessionId, in NetworkEvent event, int userId); Loading
media/java/android/media/metrics/PlaybackMetricsManager.java→media/java/android/media/metrics/MediaMetricsManager.java +7 −6 Original line number Diff line number Diff line Loading @@ -20,19 +20,19 @@ import android.annotation.NonNull; import android.os.RemoteException; /** * @hide * This class gives information about, and interacts with media metrics. */ public class PlaybackMetricsManager { public class MediaMetricsManager { // TODO: unhide APIs. private static final String TAG = "PlaybackMetricsManager"; private static final String TAG = "MediaMetricsManager"; private IPlaybackMetricsManager mService; private IMediaMetricsManager mService; private int mUserId; /** * @hide */ public PlaybackMetricsManager(IPlaybackMetricsManager service, int userId) { public MediaMetricsManager(IMediaMetricsManager service, int userId) { mService = service; mUserId = userId; } Loading Loading @@ -87,7 +87,8 @@ public class PlaybackMetricsManager { /** * Creates a playback session. */ public PlaybackSession createSession() { @NonNull public PlaybackSession createPlaybackSession() { try { String id = mService.getSessionId(mUserId); PlaybackSession session = new PlaybackSession(id, this); Loading
media/java/android/media/metrics/PlaybackSession.java +9 −4 Original line number Diff line number Diff line Loading @@ -24,11 +24,11 @@ import com.android.internal.util.AnnotationValidations; import java.util.Objects; /** * @hide * An instances of this class represents a session of media playback. */ public final class PlaybackSession implements AutoCloseable { private final @NonNull String mId; private final @NonNull PlaybackMetricsManager mManager; private final @NonNull MediaMetricsManager mManager; private boolean mClosed = false; /** Loading @@ -36,7 +36,7 @@ public final class PlaybackSession implements AutoCloseable { * * @hide */ public PlaybackSession(@NonNull String id, @NonNull PlaybackMetricsManager manager) { public PlaybackSession(@NonNull String id, @NonNull MediaMetricsManager manager) { mId = id; mManager = manager; AnnotationValidations.validate(NonNull.class, null, mId); Loading @@ -45,6 +45,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports playback metrics. * @hide */ public void reportPlaybackMetrics(@NonNull PlaybackMetrics metrics) { mManager.reportPlaybackMetrics(mId, metrics); Loading @@ -52,6 +53,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports error event. * @hide */ public void reportPlaybackErrorEvent(PlaybackErrorEvent event) { mManager.reportPlaybackErrorEvent(mId, event); Loading @@ -59,6 +61,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports network event. * @hide */ public void reportNetworkEvent(NetworkEvent event) { mManager.reportNetworkEvent(mId, event); Loading @@ -66,6 +69,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports playback state event. * @hide */ public void reportPlaybackStateEvent(PlaybackStateEvent event) { mManager.reportPlaybackStateEvent(mId, event); Loading @@ -73,6 +77,7 @@ public final class PlaybackSession implements AutoCloseable { /** * Reports track change event. * @hide */ public void reportTrackChangeEvent(TrackChangeEvent event) { mManager.reportTrackChangeEvent(mId, event); Loading @@ -96,7 +101,7 @@ public final class PlaybackSession implements AutoCloseable { } @Override public void close() throws Exception { public void close() { mClosed = true; } }
services/core/java/com/android/server/media/metrics/PlaybackMetricsManagerService.java→services/core/java/com/android/server/media/metrics/MediaMetricsManagerService.java +5 −5 Original line number Diff line number Diff line Loading @@ -17,7 +17,7 @@ package com.android.server.media.metrics; import android.content.Context; import android.media.metrics.IPlaybackMetricsManager; import android.media.metrics.IMediaMetricsManager; import android.media.metrics.NetworkEvent; import android.media.metrics.PlaybackErrorEvent; import android.media.metrics.PlaybackMetrics; Loading @@ -33,9 +33,9 @@ import com.android.server.SystemService; import java.security.SecureRandom; /** * System service manages playback metrics. * System service manages media metrics. */ public final class PlaybackMetricsManagerService extends SystemService { public final class MediaMetricsManagerService extends SystemService { private final SecureRandom mSecureRandom; /** Loading @@ -43,7 +43,7 @@ public final class PlaybackMetricsManagerService extends SystemService { * * @param context The system server context. */ public PlaybackMetricsManagerService(Context context) { public MediaMetricsManagerService(Context context) { super(context); mSecureRandom = new SecureRandom(); } Loading @@ -54,7 +54,7 @@ public final class PlaybackMetricsManagerService extends SystemService { publishBinderService("playback_metrics", new BinderService()); } private final class BinderService extends IPlaybackMetricsManager.Stub { private final class BinderService extends IMediaMetricsManager.Stub { @Override public void reportPlaybackMetrics(String sessionId, PlaybackMetrics metrics, int userId) { StatsEvent statsEvent = StatsEvent.newBuilder() Loading