From 7e22f7a17b2e403e2e0578a4ed84125941ef3b59 Mon Sep 17 00:00:00 2001 From: Nikita Ioffe Date: Fri, 27 Nov 2020 13:37:51 +0000 Subject: [PATCH] Revert "Add context to customization class constructors" This reverts commit 824c4a9cf9454091ba7d517a2834053a90a38100. Reason for revert: Potentially breaks presubmit b/174345105 Change-Id: Iafbe7cb7cc70c10f7f0e176fe3925529f59f824b Bug: 174345105 --- .../server/media/MediaKeyDispatcher.java | 3 +-- .../server/media/MediaSessionService.java | 24 +++++++++---------- .../server/media/SessionPolicyProvider.java | 3 +-- 3 files changed, 13 insertions(+), 17 deletions(-) diff --git a/services/core/java/com/android/server/media/MediaKeyDispatcher.java b/services/core/java/com/android/server/media/MediaKeyDispatcher.java index fc7c82ac5fd1d..5933723f01b64 100644 --- a/services/core/java/com/android/server/media/MediaKeyDispatcher.java +++ b/services/core/java/com/android/server/media/MediaKeyDispatcher.java @@ -20,7 +20,6 @@ import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.PendingIntent; -import android.content.Context; import android.media.session.ISessionManager; import android.media.session.MediaSession; import android.os.Binder; @@ -61,7 +60,7 @@ public abstract class MediaKeyDispatcher { private Map mOverriddenKeyEvents; - public MediaKeyDispatcher(Context context) { + public MediaKeyDispatcher() { // Constructor used for reflection mOverriddenKeyEvents = new HashMap<>(); mOverriddenKeyEvents.put(KeyEvent.KEYCODE_MEDIA_PLAY, 0); diff --git a/services/core/java/com/android/server/media/MediaSessionService.java b/services/core/java/com/android/server/media/MediaSessionService.java index 4eda7a79f17b5..b02b90092b7a0 100644 --- a/services/core/java/com/android/server/media/MediaSessionService.java +++ b/services/core/java/com/android/server/media/MediaSessionService.java @@ -96,6 +96,7 @@ import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import java.util.Map; /** * System implementation of MediaSessionManager @@ -151,6 +152,7 @@ public class MediaSessionService extends SystemService implements Monitor { private SessionPolicyProvider mCustomSessionPolicyProvider; private MediaKeyDispatcher mCustomMediaKeyDispatcher; + private Map mOverriddenKeyEventsMap; public MediaSessionService(Context context) { super(context); @@ -769,6 +771,7 @@ public class MediaSessionService extends SystemService implements Monitor { private void instantiateCustomDispatcher(String nameFromTesting) { synchronized (mLock) { mCustomMediaKeyDispatcher = null; + mOverriddenKeyEventsMap = null; String customDispatcherClassName = (nameFromTesting == null) ? mContext.getResources().getString(R.string.config_customMediaKeyDispatcher) @@ -776,10 +779,9 @@ public class MediaSessionService extends SystemService implements Monitor { try { if (!TextUtils.isEmpty(customDispatcherClassName)) { Class customDispatcherClass = Class.forName(customDispatcherClassName); - Constructor constructor = - customDispatcherClass.getDeclaredConstructor(Context.class); - mCustomMediaKeyDispatcher = - (MediaKeyDispatcher) constructor.newInstance(mContext); + Constructor constructor = customDispatcherClass.getDeclaredConstructor(); + mCustomMediaKeyDispatcher = (MediaKeyDispatcher) constructor.newInstance(); + mOverriddenKeyEventsMap = mCustomMediaKeyDispatcher.getOverriddenKeyEvents(); } } catch (ClassNotFoundException | InstantiationException | InvocationTargetException | IllegalAccessException | NoSuchMethodException e) { @@ -799,10 +801,9 @@ public class MediaSessionService extends SystemService implements Monitor { try { if (!TextUtils.isEmpty(customProviderClassName)) { Class customProviderClass = Class.forName(customProviderClassName); - Constructor constructor = - customProviderClass.getDeclaredConstructor(Context.class); + Constructor constructor = customProviderClass.getDeclaredConstructor(); mCustomSessionPolicyProvider = - (SessionPolicyProvider) constructor.newInstance(mContext); + (SessionPolicyProvider) constructor.newInstance(); } } catch (ClassNotFoundException | InstantiationException | InvocationTargetException | IllegalAccessException | NoSuchMethodException e) { @@ -2397,12 +2398,9 @@ public class MediaSessionService extends SystemService implements Monitor { return; } - int overriddenKeyEvents = 0; - if (mCustomMediaKeyDispatcher == null - && mCustomMediaKeyDispatcher.getOverriddenKeyEvents() != null) { - overriddenKeyEvents = mCustomMediaKeyDispatcher.getOverriddenKeyEvents() - .get(keyEvent.getKeyCode()); - } + int overriddenKeyEvents = (mCustomMediaKeyDispatcher == null) ? 0 + : mCustomMediaKeyDispatcher.getOverriddenKeyEvents() + .get(keyEvent.getKeyCode()); cancelTrackingIfNeeded(packageName, pid, uid, asSystemService, keyEvent, needWakeLock, opPackageName, stream, musicOnly, overriddenKeyEvents); if (!needTracking(keyEvent, overriddenKeyEvents)) { diff --git a/services/core/java/com/android/server/media/SessionPolicyProvider.java b/services/core/java/com/android/server/media/SessionPolicyProvider.java index 332c85adec015..5f02a075344e9 100644 --- a/services/core/java/com/android/server/media/SessionPolicyProvider.java +++ b/services/core/java/com/android/server/media/SessionPolicyProvider.java @@ -18,7 +18,6 @@ package com.android.server.media; import android.annotation.IntDef; import android.annotation.NonNull; -import android.content.Context; import android.media.session.MediaSession; import java.lang.annotation.Retention; @@ -55,7 +54,7 @@ public abstract class SessionPolicyProvider { */ static final int SESSION_POLICY_IGNORE_BUTTON_SESSION = 1 << 1; - public SessionPolicyProvider(Context context) { + public SessionPolicyProvider() { // Constructor used for reflection }