From caa953cd111dd2ffc72281c02733086638ea37e3 Mon Sep 17 00:00:00 2001 From: tehcneko Date: Sun, 18 Aug 2024 09:58:52 +0800 Subject: [PATCH] Support Android 15 Beta 4 --- .../disableflagsecure/DisableFlagSecure.java | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/io/github/lsposed/disableflagsecure/DisableFlagSecure.java b/app/src/main/java/io/github/lsposed/disableflagsecure/DisableFlagSecure.java index 2580a1d..5152f9f 100644 --- a/app/src/main/java/io/github/lsposed/disableflagsecure/DisableFlagSecure.java +++ b/app/src/main/java/io/github/lsposed/disableflagsecure/DisableFlagSecure.java @@ -47,7 +47,7 @@ public class DisableFlagSecure extends XposedModule { } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) { - // Screenshot detection (U) + // Screenshot detection (U~V) try { hookActivityTaskManagerService(classLoader); } catch (Throwable t) { @@ -64,7 +64,7 @@ public class DisableFlagSecure extends XposedModule { } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { - // ScreenCapture in WindowManagerService (S~U) + // ScreenCapture in WindowManagerService (S~V) try { hookScreenCapture(classLoader); } catch (Throwable t) { @@ -80,14 +80,14 @@ public class DisableFlagSecure extends XposedModule { } } - // WifiDisplay (S~U) / OverlayDisplay (S~U) / VirtualDisplay (U) + // WifiDisplay (S~V) / OverlayDisplay (S~V) / VirtualDisplay (U~V) try { hookDisplayControl(classLoader); } catch (Throwable t) { log("hook DisplayControl failed", t); } - // VirtualDisplay with MediaProjection (S~U) + // VirtualDisplay with MediaProjection (S~V4) try { hookVirtualDisplayAdapter(classLoader); } catch (Throwable t) { @@ -237,7 +237,10 @@ public class DisableFlagSecure extends XposedModule { var displayControlClazz = Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE ? classLoader.loadClass("com.android.server.display.DisplayControl") : SurfaceControl.class; - var method = displayControlClazz.getDeclaredMethod("createDisplay", String.class, boolean.class); + var method = displayControlClazz.getDeclaredMethod( + Build.VERSION.SDK_INT >= Build.VERSION_CODES.VANILLA_ICE_CREAM ? + "createVirtualDisplay" : + "createDisplay", String.class, boolean.class); hook(method, CreateDisplayHooker.class); }