我是NDK的新手。我创建了最简单的foo库。 当我尝试使用 System.loadLibrary(“foo”)加载它时,我得到例外:
Caused by: java.lang.UnsatisfiedLinkError: Couldn't load foo: findLibrary returned null
我查了一下, libfoo.so 出现在 lib / armeabi / libfoo.so 的APK文件中。 但在安装APK文件期间,它未在模拟器上部署到 /data/data/com.myapp/lib/libfoo.so 。我在Eclipse中安装带有调试按钮的APK。
我做错了什么?
我尝试将其手动推送到/data/data/com.myapp/lib/。在那种情况下,我得到例外:
Caused by: java.lang.UnsatisfiedLinkError: Cannot load library: get_lib_extents[742]: 801 - /data/data/com.myapp/lib/libfoo.so is not a valid ELF object
感谢。
答案 0 :(得分:0)
您需要将本机库放在libs / [TARGET_ARCH_ABI]下,其中TARGET_ARCH_ABI是armeabi,x86等。