使用android studion自带的编译工具NDK进行编译时,发现armeabi以及x86文件夹下的第三方so文件将会被删除,只会产生编译后的so文件,其他的so文件。下面说说解决办法:
在jni下建一个文件夹,为第三方库,写一个.mk文件,以我的为例:
文件Android_3part.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libtest
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libtest.so
include $(PREBUILT_SHARED_LIBRARY)
#如果有多个,重复以下代码
include $(CLEAR_VARS)
LOCAL_MODULE := libyzstts
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libyzstts.so
include $(PREBUILT_SHARED_LIBRARY)
其中的armeabi-v7a-hard 与 x86文件夹为原来的so文件,如果有别的架构,同理请自行添加。
最后在原来的Android.mk文件下,最后一行添加以下代码:
########################### 3part module############################
include $(LOCAL_PATH)/prebuilt/Android_3part.mk