From 9a022f4c177506d31fa106e0e627424d4a63f28f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AE=8B=E9=A1=B5?= <31466456+canyie@users.noreply.github.com> Date: Mon, 11 Apr 2022 00:18:05 +0800 Subject: [PATCH] Constructor of ActivityThread is private (#1833) --- core/src/main/java/de/robv/android/xposed/XposedBridge.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/de/robv/android/xposed/XposedBridge.java b/core/src/main/java/de/robv/android/xposed/XposedBridge.java index aeadc15e..60ae322a 100644 --- a/core/src/main/java/de/robv/android/xposed/XposedBridge.java +++ b/core/src/main/java/de/robv/android/xposed/XposedBridge.java @@ -102,7 +102,8 @@ public final class XposedBridge { // ActivityThread for now and the call will throw an NPE. Luckily they check the // nullability of the result configuration. So we hereby set a dummy // ActivityThread to bypass such a situation. - XposedHelpers.setStaticObjectField(ActivityThread.class, "sCurrentActivityThread", new ActivityThread()); + var fake = XposedHelpers.newInstance(ActivityThread.class); + XposedHelpers.setStaticObjectField(ActivityThread.class, "sCurrentActivityThread", fake); try { TypedArray ta = res.obtainTypedArray(res.getIdentifier( "preloaded_drawables", "array", "android"));