在需要引入第三方的so文件的情况下,怎样使用NDK编译本地代码?
1.新建jni文件夹,将你要编译源码的文件以及需要引入的so文件复制到jni文件目录下
2.编写android.mk文件,首先将你的将你的本地代码文件的android.mk部分的代码写好,然后在这部分后面添加需要引入的so文件的代码
参考格式如下:
1.全部写在一个文件
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libyour_module_name
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
LOCAL_SRC_FILES := your_module_src.cpp
include $(BUILD_SHARED_LIBRARY)
#下面为第三方的库
include $(CLEAR_VARS)
LOCAL_MODULE := liblocSDK3
LOCAL_SRC_FILES := liblocSDK3.so
include $(PREBUILT_SHARED_LIBRARY)
2.单独引入
我们也可以为每一个第三方库,写一个.mk文件,然后在主的.mk文件中进行引入
Android_ffmpeg.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := ffmpeg
LOCAL_SRC_FILES := libffmpeg.so
include $(PREBUILT_SHARED_LIBRARY)
Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_V

本文介绍了如何在Android项目中使用NDK编译本地代码并引入第三方SO库。首先,将源码和SO文件放入jni目录,然后编写android.mk文件,分别定义本地模块和第三方库模块。可以将每个第三方库写成单独的.mk文件并在主文件中引入。编译后,SO库会出现在对应ABI目录下。推荐为每个第三方库创建单独的.mk文件以保持清晰。
最低0.47元/天 解锁文章
1025

被折叠的 条评论
为什么被折叠?



