Android NDK:我应该在Application.mk中为APP_ABI设置什么?
我想知道我应该在Android游戏的Application.mk文件中放置哪些架构 我想支持所有可能的平台,可以在谷歌Play和其他类型的Android商店上下载游戏 我要说的是,我应该设定:Android NDK:我应该在Application.mk中为APP_ABI设置什么?,android,android-ndk,x86,arm,abi,Android,Android Ndk,X86,Arm,Abi,我想知道我应该在Android游戏的Application.mk文件中放置哪些架构 我想支持所有可能的平台,可以在谷歌Play和其他类型的Android商店上下载游戏 我要说的是,我应该设定: APP_ABI := armeabi x86 (as many x86 devices are coming soon as far as I know) 但我不知道我是否应该设置: APP_ABI := armeabi armeabi-v7a x86 或 请澄清。您还可以指定mips,当您使用all
APP_ABI := armeabi x86 (as many x86 devices are coming soon as far as I know)
但我不知道我是否应该设置:
APP_ABI := armeabi armeabi-v7a x86
或
请澄清。您还可以指定
mips
,当您使用all
时,将包括该mips
armeabi
代码可以在armeabi-v7a
设备上运行,但不能反过来运行。因此,如果您有armeabi
,则不需要armeabi-v7a
,但它将允许您利用某些设备上的硬件浮点操作
还要注意,您包含的体系结构越多,生成的APK就越大。而且,如果您定期为所有平台编译,那么构建将花费更长的时间
请查看NDK安装中的docs/CPU-ARCH-ABIS.html,了解有关不同体系结构的更多信息。我建议至少设置armeabi-v7a和x86 armeabi-v7a涵盖了大多数(可能是所有)最新的arm设备,并为您提供了硬件浮点支持 x86涵盖了当前所有x86设备(其中最大的是三星Galaxy Tab 3)。此外,从今年开始,英特尔正在大力推动平板电脑市场份额的公开化,未来可能会更受欢迎 这有很多影响。krsteve是正确的,这将使您的构建稍微慢一点(因为您现在正在有效地构建两次游戏),并使您的APK更大(因为您将x86和ARM二进制文件放在一起),但是,从总体上看,这些二进制文件的大小可能比您的资产要小,如果它们不是,那么你的游戏就不太可能大到超过GooglePlayAPK的大小限制 总结如下:
APP_ABI := all