HighCapable / YukiHookAPI

⛱️ An efficient Hook API and Xposed Module solution built in Kotlin.
https://highcapable.github.io/YukiHookAPI/
Apache License 2.0
1.42k stars 105 forks source link

[BUG] 仅在Android 9 版本 registerModuleAppActivities 错误 #53

Closed xihan123 closed 1 year ago

xihan123 commented 1 year ago

class MainActivity : ModuleAppCompatActivity() { }


* 使用场景: 在Andorid 9 不管模拟器还是真机,启动Activity,不管继承ModuleAppCompatActivity 还是ModuleActivity 都无法显示布局,其他版本暂时未发现问题。

* 其他信息:另外尝试过多个不同继承的代理,如果代理的Activity继承的是android.app.Activity则会完全透明显示上一个Activity,继承的是androidx.appcompat.app.AppCompatActivity则会显示代理Activity的基础布局,想要启动的Activity布局不显示。使用布局分析软件发现启动流程是com.qidian.QDReader.ui.activity.SplashActivity > cn.xihan.qdds.MainActivity,日志也没有任何相关内容或者报错,不知道是我对于该功能理解错误还是框架bug?
fankes commented 1 year ago

你需要找对你要代理的 Activity,而不是直接使用默认的 SplashActivity,这个 Activity 最好没有被应用用到的或者启动过的,参考 TSBattery

xihan123 commented 1 year ago

你需要找对你要代理的 Activity,而不是直接使用默认的 SplashActivity,这个 Activity 最好没有被应用用到的或者启动过的,参考 TSBattery

我试过很多不同的代理 Activity 但是如我上面所说,要么透明要么不显示布局,最重要的是这个问题仅在Android 9 下出现,其他版本皆是正常的

fankes commented 1 year ago

安卓 9 真的太老了,也没法修复,毕竟这个功能本来就不太稳定

fankes commented 1 year ago

你们不要总是拿着旧系统和设备来反馈了,目前还是优先适配新系统和设备,旧设备的问题以后再说,不解决,我也没那么老的系统以供调试了。

xihan123 commented 1 year ago

安卓 9 真的太老了,也没法修复,毕竟这个功能本来就不太稳定

好吧,那没事了

xihan123 commented 1 year ago

你们不要总是拿着旧系统和设备来反馈了,目前还是优先适配新系统和设备,旧设备的问题以后再说,不解决,我也没那么老的系统以供调试了。

只是这个问题比较奇特,仅在特定安卓版本出现,而且从很早就出现了,一直没有发现问题在哪,最近才发现是框架的问题。而且Android 9 也没那么老吧

fankes commented 1 year ago

你们不要总是拿着旧系统和设备来反馈了,目前还是优先适配新系统和设备,旧设备的问题以后再说,不解决,我也没那么老的系统以供调试了。

只是这个问题比较奇特,仅在特定安卓版本出现,而且从很早就出现了,一直没有发现问题在哪,最近才发现是框架的问题。而且Android 9 也没那么老吧

但是确实很老的东西了,当然如果有人会修的话欢迎 PR,毕竟当时的代理功能也是抄的轮子,不完全是我自己实现的。

xihan123 commented 1 year ago

你们不要总是拿着旧系统和设备来反馈了,目前还是优先适配新系统和设备,旧设备的问题以后再说,不解决,我也没那么老的系统以供调试了。

只是这个问题比较奇特,仅在特定安卓版本出现,而且从很早就出现了,一直没有发现问题在哪,最近才发现是框架的问题。而且Android 9 也没那么老吧

但是确实很老的东西了,当然如果有人会修的话欢迎 PR,毕竟当时的代理功能也是抄的轮子,不完全是我自己实现的。

刚刚深入研究了一下,发现好像不是框架的问题,准确来说是在使用了Jetpack Compose的 Android 9 系统上面才有的

fankes commented 1 year ago

但是确实很老的东西了,当然如果有人会修的话欢迎 PR,毕竟当时的代理功能也是抄的轮子,不完全是我自己实现的。

刚刚深入研究了一下,发现好像不是框架的问题,准确来说是在使用了Jetpack Compose的 Android 9 系统上面才有的

androidx 的问题啊,确实有可能,这个问题我在高版本系统上面也遇到过,解决方案就是排除一下共用的 Class 就行了。