android - 什么是 jni/libs 文件夹?

标签 android eclipse android-ndk

我注意到,当在 Eclipse 中向项目添加 native 支持时,它会生成一个 jni/libs/文件夹。这个文件夹是什么以及它是如何使用的,因为我在 NDK 文档中找不到它。

来自 NDK 文档,

a copy of your prebuilt shared library will be copied into $PROJECT/obj/local, and another will be copied and stripped into $PROJECT/libs/(abi).

我注意到,当执行 ndk-build 时,这个目录被清除,一些库被放入其中。然而,通常情况下 $Project/jni/libs 中的库与 $Project/libs 不匹配。此外,当我安装应用程序时,似乎未引用 jni/libs。

jni/libs 只是 ndk-build 使用的临时文件夹吗?它是否在任何地方记录,或者这是使用 Eclipse 提供 native 支持的痕迹?

最佳答案

jni/libs 文件夹是从 C/C++ 源代码构建共享库文件的地方。您的 native 代码会被编译,并取决于您在 application.mk 文件中为参数设置的值

APP_ABI: = <all | x86 | armv7a | armeabi-v7 | mips>

相应的 libs.so 文件生成并放置在 jni/libs 文件夹中。这些 lib 文件被 bundle 到您的最终 apk 文件中,并在需要时由您的应用程序引用。这不是临时文件夹,此文件夹中的文件会进入您的最终 apk 文件。

关于android - 什么是 jni/libs 文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25672750/

相关文章:

android - 在 ListView 中显示 firebase 子对象

android - 如何使用事件管理创建自定义日历?

android - 基于 ListItem 特定变量在 ListItem 上膨胀布局

java - 必须触摸后退按钮两次才能转到上一个 Activity

android - 在Android Studio 3.x和CMake中静态链接库

java - GSON JsonReader 给我值而不是名称?

eclipse - 更新项目时出错

java - Eclipse:将 Java 构建路径复制到不同的工作区

jenkins - 如何在Linux上的jenkins中设置android ndk

android - 如何在 Android shell 中复制和编辑文件?