From 7bfb0cfd11bc37ed5c491892ec563553b0d080fd Mon Sep 17 00:00:00 2001 From: Philip Junker Date: Fri, 9 Jun 2023 14:46:59 +0200 Subject: [PATCH] Don't enforce android.permission.TURN_SCREEN_ON in UDC. Bug: 286514923 Test: atest PowerManagerServiceTest Test: manually verified that an app targeting sdk 34 can turn the screen on with ACQUIRE_CAUSES_WAKEUP Change-Id: I7a900e49bba1a4ca9cb09c7d26b71c837c399a94 --- core/java/android/os/PowerManager.java | 3 +-- .../java/com/android/server/power/PowerManagerService.java | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/core/java/android/os/PowerManager.java b/core/java/android/os/PowerManager.java index d1063f647c4f8..d1c10fa46aaa1 100644 --- a/core/java/android/os/PowerManager.java +++ b/core/java/android/os/PowerManager.java @@ -190,8 +190,7 @@ public final class PowerManager { /** * Wake lock flag: Turn the screen on when the wake lock is acquired. *

- * This flag requires {@link android.Manifest.permission#TURN_SCREEN_ON} for apps targeting - * Android version {@link Build.VERSION_CODES#UPSIDE_DOWN_CAKE} and higher. + * This flag will require {@link android.Manifest.permission#TURN_SCREEN_ON} in future releases. *

* Normally wake locks don't actually wake the device, they just cause the screen to remain on * once it's already on. This flag will cause the device to wake up when the wake lock is diff --git a/services/core/java/com/android/server/power/PowerManagerService.java b/services/core/java/com/android/server/power/PowerManagerService.java index 695a0cf3f79d1..a53b831d55c14 100644 --- a/services/core/java/com/android/server/power/PowerManagerService.java +++ b/services/core/java/com/android/server/power/PowerManagerService.java @@ -283,7 +283,7 @@ public final class PowerManagerService extends SystemService private static final long ENHANCED_DISCHARGE_PREDICTION_BROADCAST_MIN_DELAY_MS = 60 * 1000L; /** - * Apps targeting Android U and above need to define + * Apps targeting Android V and above need to define * {@link android.Manifest.permission#TURN_SCREEN_ON} in their manifest for * {@link android.os.PowerManager#ACQUIRE_CAUSES_WAKEUP} to have any effect. * Note that most applications should use {@link android.R.attr#turnScreenOn} or @@ -291,7 +291,7 @@ public final class PowerManagerService extends SystemService * previous foreground app from being resumed first when the screen turns on. */ @ChangeId - @EnabledSince(targetSdkVersion = Build.VERSION_CODES.UPSIDE_DOWN_CAKE) + @EnabledSince(targetSdkVersion = Build.VERSION_CODES.CUR_DEVELOPMENT) public static final long REQUIRE_TURN_SCREEN_ON_PERMISSION = 216114297L; /** Reason ID for holding display suspend blocker. */