From 9788fd4afd0c470f1ae700c668ff56c0a929b9d5 Mon Sep 17 00:00:00 2001 From: Matt Pietal Date: Fri, 8 May 2020 14:17:37 -0400 Subject: [PATCH] Controls API - Flag controls support Add a package manager flag so that apps can programmatically query whether the device have system interface to support the Controls API Bug: 156096063 Test: manual Change-Id: I2dab2ecb762b59308c51615137f89733ff42caeb --- api/current.txt | 1 + core/java/android/content/pm/PackageManager.java | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/api/current.txt b/api/current.txt index 41a74cfae20ac..952ccdad992c7 100644 --- a/api/current.txt +++ b/api/current.txt @@ -12097,6 +12097,7 @@ package android.content.pm { field public static final String FEATURE_COMPANION_DEVICE_SETUP = "android.software.companion_device_setup"; field public static final String FEATURE_CONNECTION_SERVICE = "android.software.connectionservice"; field public static final String FEATURE_CONSUMER_IR = "android.hardware.consumerir"; + field public static final String FEATURE_CONTROLS = "android.software.controls"; field public static final String FEATURE_DEVICE_ADMIN = "android.software.device_admin"; field public static final String FEATURE_EMBEDDED = "android.hardware.type.embedded"; field public static final String FEATURE_ETHERNET = "android.hardware.ethernet"; diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index 4d718ef6bebef..1e9cddbb684ad 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -3048,6 +3048,16 @@ public abstract class PackageManager { @SdkConstant(SdkConstantType.FEATURE) public static final String FEATURE_IPSEC_TUNNELS = "android.software.ipsec_tunnels"; + /** + * Feature for {@link #getSystemAvailableFeatures} and + * {@link #hasSystemFeature}: The device supports a system interface for the user to select + * and bind device control services provided by applications. + * + * @see android.service.controls.ControlsProviderService + */ + @SdkConstant(SdkConstantType.FEATURE) + public static final String FEATURE_CONTROLS = "android.software.controls"; + /** * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}: The device has * the requisite hardware support to support reboot escrow of synthetic password for updates.