From 3d1f036c04412e17a694e6a0b857b7f9e9217ab3 Mon Sep 17 00:00:00 2001 From: Romain Vimont Date: Tue, 26 Nov 2024 15:47:27 +0100 Subject: [PATCH] Rollback to old --turn-screen-off for Android 15 When the screen is turned off with the new display power method introduced in Android 15, video mirroring freezes. Use the Android 14 method for Android 15. Refs 58ba00fa060c9a1f439120f8869ed106e1c935f9 Refs #5418 Fixes #5530 --- .../src/main/java/com/genymobile/scrcpy/device/Device.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/server/src/main/java/com/genymobile/scrcpy/device/Device.java b/server/src/main/java/com/genymobile/scrcpy/device/Device.java index cd713499..3553dc27 100644 --- a/server/src/main/java/com/genymobile/scrcpy/device/Device.java +++ b/server/src/main/java/com/genymobile/scrcpy/device/Device.java @@ -40,6 +40,10 @@ public final class Device { public static final int INJECT_MODE_WAIT_FOR_RESULT = InputManager.INJECT_INPUT_EVENT_MODE_WAIT_FOR_RESULT; public static final int INJECT_MODE_WAIT_FOR_FINISH = InputManager.INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH; + // The new display power method introduced in Android 15 does not work as expected: + // + private static final boolean USE_ANDROID_15_DISPLAY_POWER = false; + private Device() { // not instantiable } @@ -127,7 +131,7 @@ public final class Device { public static boolean setDisplayPower(int displayId, boolean on) { assert displayId != Device.DISPLAY_ID_NONE; - if (Build.VERSION.SDK_INT >= AndroidVersions.API_35_ANDROID_15) { + if (USE_ANDROID_15_DISPLAY_POWER && Build.VERSION.SDK_INT >= AndroidVersions.API_35_ANDROID_15) { return ServiceManager.getDisplayManager().requestDisplayPower(displayId, on); }