我使用 eclipse 配置 ndk 以便自动构建我的 C++ 代码。但我在 libs 文件夹中有两个外部 .so 文件。每次构建项目时,eclipse都会自动删除这些外部.so文件。是否可以告诉eclipse不要删除这些外部文件。
最佳答案
解决方案是 here 。
总结(和补充):
将外部(例如 libexternal.so)库复制到“jni”文件夹内的另一个文件夹;例如“myproject/jni/prebuilt”。
将以下 block 添加到现有的“jni/Android.mk”(每个外部库一个 block ):
include $(CLEAR_VARS) LOCAL_MODULE := libexternal LOCAL_SRC_FILES := prebuilt/libexternal.so include $(PREBUILT_SHARED_LIBRARY)
将“libexternal”添加到现有“jni/Application.mk”中的“APP_MODULES”。 “APP_MODULES”应该已经列出了您的 JNI 模块(例如“myjnimodule”):
APP_MODULES := libexternal myjnimodule
确认“jni/Application.mk”中存在以下 block 。使用适当的目标架构:
APP_ABI := armeabi-v7a
结果是,作为调用“ndk-build”的一部分,外部库被复制到您的“myproject/libs/armeabi-v7a”文件夹。
关于android - 如何设置eclipse在构建过程中不删除某些文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17274187/