diff --git a/core/api/current.txt b/core/api/current.txt index 623f210b83268..085b1e289aee4 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -12503,7 +12503,7 @@ package android.content.pm { field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE}, anyOf={android.Manifest.permission.BLUETOOTH_CONNECT, 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}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE = 16; // 0x10 field @Deprecated @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}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_HEALTH = 256; // 0x100 + 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 field @RequiresPermission(value=android.Manifest.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK = 2; // 0x2 diff --git a/core/java/android/app/ForegroundServiceTypePolicy.java b/core/java/android/app/ForegroundServiceTypePolicy.java index e99e360a45839..877177cc8861f 100644 --- a/core/java/android/app/ForegroundServiceTypePolicy.java +++ b/core/java/android/app/ForegroundServiceTypePolicy.java @@ -56,7 +56,6 @@ import android.content.pm.ServiceInfo.ForegroundServiceType; import android.hardware.usb.UsbAccessory; import android.hardware.usb.UsbDevice; import android.hardware.usb.UsbManager; -import android.healthconnect.HealthConnectManager; import android.os.RemoteException; import android.os.ServiceManager; import android.permission.PermissionCheckerManager; @@ -73,7 +72,6 @@ import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.HashMap; import java.util.Optional; -import java.util.Set; /** * This class enforces the policies around the foreground service types. @@ -994,45 +992,6 @@ public abstract class ForegroundServiceTypePolicy { } } - static class HealthConnectPermission extends RegularPermission { - private @Nullable String[] mPermissionNames; - - HealthConnectPermission() { - super("Health Connect"); - } - - @Override - @SuppressLint("AndroidFrameworkRequiresPermission") - @PackageManager.PermissionResult - public int checkPermission(@NonNull Context context, int callerUid, int callerPid, - String packageName, boolean allowWhileInUse) { - final String[] perms = getPermissions(context); - for (String perm : perms) { - if (checkPermission(context, perm, callerUid, callerPid, - packageName, allowWhileInUse) == PERMISSION_GRANTED) { - return PERMISSION_GRANTED; - } - } - return PERMISSION_DENIED; - } - - @Override - void addToList(@NonNull Context context, @NonNull ArrayList list) { - final String[] perms = getPermissions(context); - for (String perm : perms) { - list.add(perm); - } - } - - private @NonNull String[] getPermissions(@NonNull Context context) { - if (mPermissionNames != null) { - return mPermissionNames; - } - final Set healthPerms = HealthConnectManager.getHealthPermissions(context); - return mPermissionNames = healthPerms.toArray(new String[healthPerms.size()]); - } - } - /** * The default policy for the foreground service types. * diff --git a/core/java/android/content/pm/ServiceInfo.java b/core/java/android/content/pm/ServiceInfo.java index fc2c532ee756f..6453ab0b89649 100644 --- a/core/java/android/content/pm/ServiceInfo.java +++ b/core/java/android/content/pm/ServiceInfo.java @@ -308,9 +308,7 @@ public class ServiceInfo extends ComponentInfo * permissions: * {@link android.Manifest.permission#ACTIVITY_RECOGNITION}, * {@link android.Manifest.permission#BODY_SENSORS}, - * {@link android.Manifest.permission#HIGH_SAMPLING_RATE_SENSORS}, - * or one of the {@code "android.permission.health.*"} permissions defined in the - * {@link android.healthconnect.HealthPermissions}. + * {@link android.Manifest.permission#HIGH_SAMPLING_RATE_SENSORS}. */ @RequiresPermission( allOf = { @@ -320,8 +318,7 @@ public class ServiceInfo extends ComponentInfo Manifest.permission.ACTIVITY_RECOGNITION, Manifest.permission.BODY_SENSORS, Manifest.permission.HIGH_SAMPLING_RATE_SENSORS, - }, - conditional = true + } ) public static final int FOREGROUND_SERVICE_TYPE_HEALTH = 1 << 8; diff --git a/packages/Shell/AndroidManifest.xml b/packages/Shell/AndroidManifest.xml index 17ff4317a94f9..47794b8427db5 100644 --- a/packages/Shell/AndroidManifest.xml +++ b/packages/Shell/AndroidManifest.xml @@ -783,80 +783,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -