summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/current.txt1
-rw-r--r--core/java/android/content/pm/ServiceInfo.java8
-rw-r--r--core/res/res/values/attrs_manifest.xml3
3 files changed, 12 insertions, 0 deletions
diff --git a/api/current.txt b/api/current.txt
index 7b04dde96402..d57057dcc8f6 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -11941,6 +11941,7 @@ package android.content.pm {
field public static final int FOREGROUND_SERVICE_TYPE_LOCATION = 8; // 0x8
field public static final int FOREGROUND_SERVICE_TYPE_MANIFEST = -1; // 0xffffffff
field public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK = 2; // 0x2
+ field public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION = 32; // 0x20
field public static final int FOREGROUND_SERVICE_TYPE_NONE = 0; // 0x0
field public static final int FOREGROUND_SERVICE_TYPE_PHONE_CALL = 4; // 0x4
field public int flags;
diff --git a/core/java/android/content/pm/ServiceInfo.java b/core/java/android/content/pm/ServiceInfo.java
index cd40c95b5737..00507e1548a6 100644
--- a/core/java/android/content/pm/ServiceInfo.java
+++ b/core/java/android/content/pm/ServiceInfo.java
@@ -140,6 +140,13 @@ public class ServiceInfo extends ComponentInfo
public static final int FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE = 1 << 4;
/**
+ * Constant corresponding to {@code mediaProjection} in
+ * the {@link android.R.attr#foregroundServiceType} attribute.
+ * Managing a media projection session, e.g for screen recording or taking screenshots.
+ */
+ public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION = 1 << 5;
+
+ /**
* A special value indicates to use all types set in manifest file.
*/
public static final int FOREGROUND_SERVICE_TYPE_MANIFEST = -1;
@@ -158,6 +165,7 @@ public class ServiceInfo extends ComponentInfo
FOREGROUND_SERVICE_TYPE_PHONE_CALL,
FOREGROUND_SERVICE_TYPE_LOCATION,
FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE,
+ FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION,
})
@Retention(RetentionPolicy.SOURCE)
public @interface ForegroundServiceType {}
diff --git a/core/res/res/values/attrs_manifest.xml b/core/res/res/values/attrs_manifest.xml
index fc7b4cf05b56..44f44d4480d6 100644
--- a/core/res/res/values/attrs_manifest.xml
+++ b/core/res/res/values/attrs_manifest.xml
@@ -1473,6 +1473,9 @@
<flag name="location" value="0x08" />
<!-- Auto, bluetooth, TV or other devices connection, monitoring and interaction. -->
<flag name="connectedDevice" value="0x10" />
+ <!-- Managing a media projection session, e.g, for screen recording or taking
+ screenshots.-->
+ <flag name="mediaProjection" value="0x20" />
</attr>