无法加载libfoo:findLibrary返回null

时间:2012-08-08 20:32:05

标签: android android-ndk java-native-interface

我做了一切“正确”:

  1. 在jni / Android.mk中使用LOCAL_MODULE := libfoo创建了我的JNI模块

  2. 名为System.loadlibrary("libfoo")

  3. 声明方法的正确签名,甚至用javah

  4. 对其进行双重检查

    但仍有UnsatisfiedLinkError个例外,其中包含以下消息:

      

    无法加载libfoo:findLibrary返回null

1 个答案:

答案 0 :(得分:18)

显然 loadLibrary 方法会自动添加“lib”,因此加载文件名(如“libfoo.so”)的正确方法是调用System.loadLibrary("foo")

我很难学到这一点,所以你不必这么做。