我如何知道我应该在Android中的JNI中添加哪些库?

时间:2014-03-28 09:48:08

标签: java android android-ndk

我参考了Hello-JNI的项目,System.loadLibrary("hello-jni");中有HelloJni.java

但我没有看到任何图书馆在hello-jni项目中调用Hello-JNI

Hello-jni的项目就像下面的图片一样。

enter image description here

它显示如下的描述:

/* this is used to load the 'hello-jni' library on application
     * startup. The library has already been unpacked into
     * /data/data/com.example.hellojni/lib/libhello-jni.so at
     * installation time by the package manager.
     */

The question 1:

为什么加载hello-jni librarieshello-jni libraries

在哪里?

The question 2:

如果我只有.so文件,我如何知道System.loadLibrary应添加哪些库?

The question 3:

如果我在libs / xxx.jar中有库,它可以在我System.loadLibrary("hello-jni");之后工作 对吗?

1 个答案:

答案 0 :(得分:1)

1)编译过程将.so文件创建到libs/architecture/目录中。它们将全部包含在apk中。

2)我不认为NDK库将在" libs"以外的目录中读取。 (在创建apk时,它是"重命名"到" lib"在apk本身内)或在jar中。