Android ndk-build忽略APP_ABI:= x86

我试图运行NDK编译本机代码,以运行Atom(x86)处理器以及ARM。 不pipe我怎么设置APP_ABI,NDK都在生成armeabi库。 即使我只把APP作为APP_ABI。 而文件大小总是一样的。 这里是我的Application.mk文件:

LOCAL_PATH := $(call my-dir) APP_ABI := x86 include $(CLEAR_VARS) LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog LOCAL_MODULE := myjni-jni LOCAL_SRC_FILES := myjni-jni.c include $(BUILD_SHARED_LIBRARY) 

不pipe我在APP_ABI之后放什么,我得到的是armeabi和它的大小一样。 这里怎么了? 我正在使用最新的NDK。

您应该将APP_ABIvariables放在Application.mk文件中,而不是Android.mk文件中。

它是用NDK(docs / CPU-ARCH-ABIS.html文件)的文档编写的。

如果您没有Application.mk文件,请在project root目录下的jni文件夹中创build一个。

project_root / JNI / Application.mk

添加目标编译平台:

APP_ABI:= x86

或平台:

APP_ABI:= armeabi armeabi-v7a x86 mips

您也可以直接将APP_ABI设置为ndk-build shell命令:

 ndk-build APP_ABI=x86