summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jing Ji <jji@google.com> 2023-01-18 00:21:59 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-01-18 00:21:59 +0000
commitfc92ae312fd7fb6ed7a1bec6bbc545579dae877f (patch)
treec3b58e06f6f3fb2443a8d61db6fb3238a151f7ea
parent7be84b8a5623f4cb7cb430a74c0159545d56a08b (diff)
parent40fa578aeecec89ff6d28524491b6254913b3a36 (diff)
Merge "Hide the FILE_MANAGEMENT foreground service type"
-rw-r--r--core/api/current.txt2
-rw-r--r--core/java/android/content/pm/ServiceInfo.java2
-rw-r--r--core/res/AndroidManifest.xml1
-rw-r--r--core/res/res/values/attrs_manifest.xml4
4 files changed, 6 insertions, 3 deletions
diff --git a/core/api/current.txt b/core/api/current.txt
index f59e318d9b2c..271f2666041f 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -96,7 +96,6 @@ package android {
field public static final String FOREGROUND_SERVICE_CAMERA = "android.permission.FOREGROUND_SERVICE_CAMERA";
field public static final String FOREGROUND_SERVICE_CONNECTED_DEVICE = "android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE";
field public static final String FOREGROUND_SERVICE_DATA_SYNC = "android.permission.FOREGROUND_SERVICE_DATA_SYNC";
- field public static final String FOREGROUND_SERVICE_FILE_MANAGEMENT = "android.permission.FOREGROUND_SERVICE_FILE_MANAGEMENT";
field public static final String FOREGROUND_SERVICE_HEALTH = "android.permission.FOREGROUND_SERVICE_HEALTH";
field public static final String FOREGROUND_SERVICE_LOCATION = "android.permission.FOREGROUND_SERVICE_LOCATION";
field public static final String FOREGROUND_SERVICE_MEDIA_PLAYBACK = "android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK";
@@ -12727,7 +12726,6 @@ package android.content.pm {
field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_CAMERA}, anyOf={android.Manifest.permission.CAMERA}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_CAMERA = 64; // 0x40
field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE}, anyOf={android.Manifest.permission.BLUETOOTH_ADVERTISE, android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_SCAN, android.Manifest.permission.CHANGE_NETWORK_STATE, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_MULTICAST_STATE, android.Manifest.permission.NFC, android.Manifest.permission.TRANSMIT_IR, android.Manifest.permission.UWB_RANGING}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE = 16; // 0x10
field @RequiresPermission(value=android.Manifest.permission.FOREGROUND_SERVICE_DATA_SYNC, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_DATA_SYNC = 1; // 0x1
- field @RequiresPermission(android.Manifest.permission.FOREGROUND_SERVICE_FILE_MANAGEMENT) public static final int FOREGROUND_SERVICE_TYPE_FILE_MANAGEMENT = 4096; // 0x1000
field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_HEALTH}, anyOf={android.Manifest.permission.ACTIVITY_RECOGNITION, android.Manifest.permission.BODY_SENSORS, android.Manifest.permission.HIGH_SAMPLING_RATE_SENSORS}) public static final int FOREGROUND_SERVICE_TYPE_HEALTH = 256; // 0x100
field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_LOCATION}, anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_LOCATION = 8; // 0x8
field public static final int FOREGROUND_SERVICE_TYPE_MANIFEST = -1; // 0xffffffff
diff --git a/core/java/android/content/pm/ServiceInfo.java b/core/java/android/content/pm/ServiceInfo.java
index 0b503eb06c3c..6ca708aab781 100644
--- a/core/java/android/content/pm/ServiceInfo.java
+++ b/core/java/android/content/pm/ServiceInfo.java
@@ -426,6 +426,8 @@ public class ServiceInfo extends ComponentInfo
* the {@link android.R.attr#foregroundServiceType} attribute.
* The file management use case which manages files/directories, often involving file I/O
* across the file system.
+ *
+ * @hide
*/
@RequiresPermission(
value = Manifest.permission.FOREGROUND_SERVICE_FILE_MANAGEMENT
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index f74ebc49760c..27f2b8a72901 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -6487,6 +6487,7 @@
<!-- Allows a regular application to use {@link android.app.Service#startForeground
Service.startForeground} with the type "fileManagement".
<p>Protection level: normal|instant
+ @hide
-->
<permission android:name="android.permission.FOREGROUND_SERVICE_FILE_MANAGEMENT"
android:description="@string/permdesc_foregroundServiceFileManagement"
diff --git a/core/res/res/values/attrs_manifest.xml b/core/res/res/values/attrs_manifest.xml
index ef94484f8de6..11a4ed7376d8 100644
--- a/core/res/res/values/attrs_manifest.xml
+++ b/core/res/res/values/attrs_manifest.xml
@@ -1720,8 +1720,10 @@
<p>Requires the app to hold the permission
{@link android.Manifest.permission#FOREGROUND_SERVICE_FILE_MANAGEMENT} in order to use
this type.
+
+ TODO: b/258855262 mark this field as {@code hide} once this bug is fixed.
+ <flag name="fileManagement" value="0x1000" />
-->
- <flag name="fileManagement" value="0x1000" />
<!-- Use cases that can't be categorized into any other foreground service types, but also
can't use @link android.app.job.JobInfo.Builder} APIs.
See {@link android.content.pm.ServiceInfo#FOREGROUND_SERVICE_TYPE_SPECIAL_USE} for the