Merge "TIAF: add permission BIND_TV_INTERACTIVE_APP"

This commit is contained in:
Yixiao Luo
2022-01-25 22:03:17 +00:00
committed by Android (Google) Code Review
3 changed files with 14 additions and 1 deletions

View File

@@ -50,6 +50,7 @@ package android {
field public static final String BIND_TELECOM_CONNECTION_SERVICE = "android.permission.BIND_TELECOM_CONNECTION_SERVICE";
field public static final String BIND_TEXT_SERVICE = "android.permission.BIND_TEXT_SERVICE";
field public static final String BIND_TV_INPUT = "android.permission.BIND_TV_INPUT";
field public static final String BIND_TV_INTERACTIVE_APP = "android.permission.BIND_TV_INTERACTIVE_APP";
field public static final String BIND_VISUAL_VOICEMAIL_SERVICE = "android.permission.BIND_VISUAL_VOICEMAIL_SERVICE";
field public static final String BIND_VOICE_INTERACTION = "android.permission.BIND_VOICE_INTERACTION";
field public static final String BIND_VPN_SERVICE = "android.permission.BIND_VPN_SERVICE";

View File

@@ -4205,6 +4205,13 @@
<permission android:name="android.permission.BIND_TV_INPUT"
android:protectionLevel="signature|privileged" />
<!-- Must be required by a {@link android.media.tv.interactive.TvInteractiveAppService}
to ensure that only the system can bind to it.
<p>Protection level: signature|privileged
-->
<permission android:name="android.permission.BIND_TV_INTERACTIVE_APP"
android:protectionLevel="signature|privileged" />
<!-- @SystemApi
Must be required by a {@link com.android.media.tv.remoteprovider.TvRemoteProvider}
to ensure that only the system can bind to it.

View File

@@ -134,7 +134,12 @@ public class TvInteractiveAppManagerService extends SystemService {
for (ResolveInfo ri : services) {
ServiceInfo si = ri.serviceInfo;
// TODO: add BIND_TV_INTERACTIVE_APP permission and check it here
if (!android.Manifest.permission.BIND_TV_INTERACTIVE_APP.equals(si.permission)) {
Slog.w(TAG, "Skipping TV interactiva app service " + si.name
+ ": it does not require the permission "
+ android.Manifest.permission.BIND_TV_INTERACTIVE_APP);
continue;
}
ComponentName component = new ComponentName(si.packageName, si.name);
try {