From 333a51344be6b02eef8d78181e197f1030d1bcda Mon Sep 17 00:00:00 2001 From: shubang Date: Thu, 13 Feb 2020 11:21:48 -0800 Subject: Add a permission for Descrambler Most of the broadcast features don't require descrambler. Use another permission to minimized the access and protect scrambled contents. Bug: 139308734 Test: make; Change-Id: I3cfcf22ee6b0c9218d3db966b3f441d491d8dd03 --- api/system-current.txt | 3 ++- core/res/AndroidManifest.xml | 8 ++++++- media/java/android/media/tv/tuner/Tuner.java | 4 ++-- media/java/android/media/tv/tuner/TunerUtils.java | 29 ++++++++++++++++++++--- 4 files changed, 37 insertions(+), 7 deletions(-) diff --git a/api/system-current.txt b/api/system-current.txt index 26abc64dfe9c..2aa9c1c2574f 100755 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -17,6 +17,7 @@ package android { field public static final String ACCESS_SHARED_LIBRARIES = "android.permission.ACCESS_SHARED_LIBRARIES"; field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS"; field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER"; + field public static final String ACCESS_TV_DESCRAMBLER = "android.permission.ACCESS_TV_DESCRAMBLER"; field public static final String ACCESS_TV_TUNER = "android.permission.ACCESS_TV_TUNER"; field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING"; field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY"; @@ -4862,7 +4863,7 @@ package android.media.tv.tuner { method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public static android.media.tv.tuner.DemuxCapabilities getDemuxCapabilities(@NonNull android.content.Context); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.frontend.FrontendInfo getFrontendInfo(); method @Nullable public android.media.tv.tuner.frontend.FrontendStatus getFrontendStatus(@NonNull int[]); - method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Descrambler openDescrambler(); + method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_DESCRAMBLER) public android.media.tv.tuner.Descrambler openDescrambler(); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrPlayback openDvrPlayback(long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.dvr.OnPlaybackStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrRecorder openDvrRecorder(long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.dvr.OnRecordStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.filter.Filter openFilter(int, int, long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.filter.FilterCallback); diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 71a42e454f30..417b167cb35c 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -4917,7 +4917,13 @@

Not for use by third-party applications. @hide --> + android:protectionLevel="signature|privileged|vendorPrivileged" /> + + +