«

Android NDK 引用第三方.so库到lib下

时间:2024-3-2 18:47     作者:韩俊     分类: Android


问题:当编译ndk项目的时候,eclipse会自动删除lib/armeabi目录下的so库。每次都要重新把第三方的so库文件要重新粘贴进去。

解决办法:
1、在JNI文件夹下建立prebuilt文件夹。

2、进入prebuilt文件夹,将so库文件按照不同的系统架构放到不同的文件夹下,并且创建Androidusc.mk文件

3、Androidusc.mk文件 内容如下

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := jpush172
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/****.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := jpush172
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/****.so
include $(PREBUILT_SHARED_LIBRARY)

星号部分修改为第三方so库名称
多个so库,请配置多个

include $(CLEAR_VARS)
LOCAL_MODULE := jpush172
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/****.so
include $(PREBUILT_SHARED_LIBRARY)

4、回到JNI目录下打开Android.mk
并在文件结尾加入

include $(LOCAL_PATH)/prebuilt/Androidusc.mk

至此,从新编译NDK时,第三方编译好的so库文件就会根据不同的系统架构放置到对应的lib/armeabi文件夹下

标签: android

热门推荐