未安装Android本机库

时间:2013-05-03 13:10:08

标签: android android-ndk

我是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

感谢。

1 个答案:

答案 0 :(得分:0)

您需要将本机库放在libs / [TARGET_ARCH_ABI]下,其中TARGET_ARCH_ABI是armeabi,x86等。