// In XposedInit
private AppComponentFactory mAppComponentFactory;
// In handleLoadPackage
mAppComponentFactory = (AppComponentFactory) lpparam.classLoader.loadClass("com.baidu.nps.hook.component.NPSComponentFactory").newInstance();
XposedHelpers.findAndHookMethod(
Instrumentation.class,
"getFactory",
String.class,
new XC_MethodHook() {
@Override
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
if (param.args[0].toString().equals("com.baidu.tieba")) {
param.setResult(mAppComponentFactory);
}
}
});
Expected behaviour/预期行为
正常打开个人中心
Actual behaviour/实际行为
app卡死
Xposed Module List/Xposed 模块列表
N/A
LSPatch version/LSPatch 版本
04154c8
Android version/Android 版本
14
Shizuku version/Shizuku 版本
N/A
Version requirement/版本要求
[X] I am using latest debug CI version of LSPatch and enable verbose log/我正在使用最新 CI 调试版本且启用详细日志
Apk file/Apk 文件
No response
Logs/日志
Crash unexpectedly: java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.baidu.tieba/com.baidu.tieba.flutter.base.view.FlutterPageActivity}: java.lang.ClassNotFoundException: Didn't find class "com.baidu.tieba.flutter.base.view.FlutterPageActivity" on path: DexPathList[[zip file "/data/user/0/com.baidu.tieba/cache/lspatch/origin/3396398446.apk"],nativeLibraryDirectories=[...]]
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3729)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3963)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:139)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:96)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2468)
at com.baidu.tieba.zg$a.handleMessage(SourceFile:105010)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:205)
at android.os.Looper.loop(Looper.java:294)
at android.app.ActivityThread.main(ActivityThread.java:8248)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.baidu.tieba.flutter.base.view.FlutterPageActivity" on path: DexPathList[[zip file "/data/user/0/com.baidu.tieba/cache/lspatch/origin/3396398446.apk"],nativeLibraryDirectories=[...]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at android.app.AppComponentFactory.instantiateActivity(AppComponentFactory.java:95)
at android.app.Instrumentation.newActivity(Instrumentation.java:1378)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3716)
... 13 more
Steps to reproduce/复现步骤
你好,我是贴吧ts的维护者, 这个bug是这里导致的,注释掉这几行可以解决问题 https://github.com/HSSkyBoy/NPatch/blob/2c06d1cf6676b7e2d5dc974f63c4d71f56afb887/patch-loader/src/main/java/org/lsposed/lspatch/loader/LSPApplication.java#L168-L175
或者这样workaround
Expected behaviour/预期行为
正常打开个人中心
Actual behaviour/实际行为
app卡死
Xposed Module List/Xposed 模块列表
LSPatch version/LSPatch 版本
04154c8
Android version/Android 版本
14
Shizuku version/Shizuku 版本
N/A
Version requirement/版本要求
Apk file/Apk 文件
No response
Logs/日志