What's rule does Android system load native library(so file) from armeabi,armeabi-v7a,arm64-v8a?

Viewed 3063

Assume we have a jni folder structure below.

armeabi
    a.so
    b.so
armeabi-v7a
    a.so

On a ARMv7-based device, I want to load b.so, but the there is no b.so under folder "armeabi-v7a", so will the system report a not found library error or use the b.so under folder "armeabi"?

And even more, what order does system look for a so file among armeabi,armeabi-v7a,arm64-v8a,x86,x86_64? For example, on a x86_64-based device, system look for the so file in folder x86_64 first, but if not found, will system continue to look for the file in x86,arm64-v8a,armeabi-v7a,armeabi in sequence?

2 Answers
Related