librootjava
librootjava copied to clipboard
Missing JniInvocationCreate
Got this error on some Android 10 treble ROM devices (also samsung Galaxy J7(2016)): CANNOT LINK EXECUTABLE "/system/bin/app_process64": cannot locate symbol "JniInvocationCreate" referenced by "/system/lib64/libandroid_runtime.so"
This symbol seems to be located in /apex/com.android.runtime/lib64/libnativehelper.so
(Android 10) or /apex/com.android.art/lib64/libnativehelper.so
(Android 11), which might be why it only happens on Android 10 Treble ROMs. This can also be found in /system/etc/ld.config.$ABI_STRING.txt
.
Why don't we just use linker?
$ /system/bin/linker
Usage: /system/bin/linker program [arguments...]
/system/bin/linker path.zip!/program [arguments...]
A helper program for linking dynamic executables. Typically, the kernel loads
this program because it's the PT_INTERP of a dynamic executable.
This program can also be run directly to load and run a dynamic executable. The
executable can be inside a zip file if it's stored uncompressed and at a
page-aligned offset.