Closed yearsyan closed 2 years ago
Yes that's a known bug for dlfunc. It took me quite a while but still could not figure out how to disable method compilation.
I think there are 2 ways :
InMemoryDexClassLoader
to load the dex dynamic./proc/self/maps
to get symbol address. Take the first one and it seems to work: https://github.com/rk700/dlfunc/commit/aae30486c4ef3878fda023891cf2f7171f63430f . Thanks!
I try to build YAHFA demo app.When I first install app and push the plugin, the App run success. And here is the linker log
But when I open the app on the second time, the app crashed , here is the log:
It seems that the aot compiler will compile JNI method, then the return address will be the trampoline that created by aot compiler instead of
artQuickGenericJniTrampoline
.Device: Redmi K40, Android 11/MIUI 12.5.19