From 3df9a9eb097975abe91d5a09d441546fd7582e2b Mon Sep 17 00:00:00 2001 From: Hangyu Kuang Date: Thu, 1 Jul 2021 00:35:04 +0000 Subject: [PATCH] Revert^2 "trancoding: lazy-start transcoding service" db10bbab0890a233e76c259cb60e9c02016186c2 Bug: 187271658 Test: atest MediaTranscodeManagerTest; unit tests Change-Id: I69ab6302d1e0febe1a015944d2d5058d869af4ff --- .../java/android/media/MediaServiceManager.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/media/java/android/media/MediaServiceManager.java b/media/java/android/media/MediaServiceManager.java index b899559d2e50a..fd89c0c67e71c 100644 --- a/media/java/android/media/MediaServiceManager.java +++ b/media/java/android/media/MediaServiceManager.java @@ -45,12 +45,21 @@ public class MediaServiceManager { */ public static final class ServiceRegisterer { private final String mServiceName; + private final boolean mLazyStart; + + /** + * @hide + */ + public ServiceRegisterer(String serviceName, boolean lazyStart) { + mServiceName = serviceName; + mLazyStart = lazyStart; + } /** * @hide */ public ServiceRegisterer(String serviceName) { - mServiceName = serviceName; + this(serviceName, false /*lazyStart*/); } /** @@ -61,6 +70,9 @@ public class MediaServiceManager { */ @Nullable public IBinder get() { + if (mLazyStart) { + return ServiceManager.waitForService(mServiceName); + } return ServiceManager.getService(mServiceName); } } @@ -78,7 +90,7 @@ public class MediaServiceManager { */ @NonNull public ServiceRegisterer getMediaTranscodingServiceRegisterer() { - return new ServiceRegisterer(MEDIA_TRANSCODING_SERVICE); + return new ServiceRegisterer(MEDIA_TRANSCODING_SERVICE, true /*lazyStart*/); } /**