在android ndk中如何在一次构建运行时创建多个库(.so)

YLS*_*YLS 3 android-ndk android-studio android.mk .so

如何在单个ndk-build运行中创建多个.so文件或库例如,我发布了代码:

build.gradle:

ndk {
moduleName = [“native-lib”,”MyLibrary”]
}

sourceSets.main {
jni.srcDirs = []
jniLibs.srcDir “src/main/libs”
}
Run Code Online (Sandbox Code Playgroud)

Android.mk:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := native-lib
LOCAL_MODULE := MyLibrary
LOCAL_SRC_FILES := native-lib.cpp
LOCAL_SRC_FILES := MyLibrary.cpp
include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)

Application.mk:

APP_MODULES := native-lib
APP_MODULES := MyLibrary

APP_ABI := all
Run Code Online (Sandbox Code Playgroud)

是可以做到的还是有其他方法可以做到这一点?谢谢

Mic*_*ael 5

您需要在Android.mk中拆分内容:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := native-lib
LOCAL_SRC_FILES := native-lib.cpp
include $(BUILD_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := MyLibrary
LOCAL_SRC_FILES := MyLibrary.cpp
include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)

APP_MODULES在Application.mk中不需要。该构建系统默认将构建Android.mk中的所有模块。