首页 > 解决方案 > 使用 JNI so 文件导入 Android AAR

问题描述

尝试将 AAR 作为模块“my-java-module”导入,该模块包含一个 /jni/x86 文件夹和两个.so文件。使用模块中的类时,我收到错误消息:

W/System.err: Native code library (javamodule) failed to load. 
W/System.err: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/system/framework/com.google.android.things.jar", zip file "/data/app/com.test.app-a3ZcweiV8k7NhpzM3KSjc==/base.apk"],nativeLibraryDirectories=[/data/app/com.test.app-a3ZcweiV8k7NhpzM3KSjc==/lib/arm, /system/lib, /vendor/lib]]] couldn't find "libjavamodule.so"

所以我将模块名称更改为“javamodule”并加载但现在没有给出实现错误:

E/zygote: No implementation found for void module_function()

问题:如何告诉 Android 从导入的 AAR 模块加载 /lib/x86 .so 文件,以便找到实现?

标签: androidandroid-ndkaar

解决方案


推荐阅读