如何使用.apk构建没有arm64 .so文件的arm64-v8a文件夹?

时间:2019-10-15 07:55:49

标签: android android-ndk

我已经预建了.so库,但是我没有arm64-v8a .so文件。根据Google的新政策,在Play商店中上传.apk必须使用64位体系结构。我可以添加

 ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64','mips' 

在gradle.build中,但不包括在我的.apk arm64-v8a文件夹中。我在带有球型文件的jniLibs文件夹中手动添加arm64-v8a文件夹,但在不包含.apk的.apk中添加arm64-v8a文件夹,如何在不包含arm64-v8a .so Librairie的.apk中添加arm64-v8a文件夹。

1 个答案:

答案 0 :(得分:0)

您必须在Android.mk文件夹的jni文件中指定预构建库,下面是一个示例:

include $(CLEAR_VARS)

LOCAL_MODULE := your-module
LOCAL_MODULE_FILENAME := your-module

ifeq (arm64-v8a,$(TARGET_ARCH_ABI))
    LOCAL_SRC_FILES += $(LOCAL_PATH)/your-module-arm64.a
endif

ifeq (armeabi-v7a,$(TARGET_ARCH_ABI))
    LOCAL_SRC_FILES += $(LOCAL_PATH)/your-module-arm.a
endif

ifeq (x86,$(TARGET_ARCH_ABI))
    LOCAL_SRC_FILES += $(LOCAL_PATH)/your-module-x86.a
endif

ifeq (x86_64,$(TARGET_ARCH_ABI))
    LOCAL_SRC_FILES += $(LOCAL_PATH)/your-module-x86_64.a
endif

include $(PREBUILT_STATIC_LIBRARY)