这是我的Application.mk:
APP_ABI := armeabi-v7a
APP_PLATFORM := android-16
APP_OPTIM := release
APP_STL := gnustl_static
APP_CPPFLAGS := -std=gnu++11
APP_PLATFORM
的值是android-16,因此我们可以支持Android操作系统4.1及更高版本。
我知道应用程序可以在APP_PLATFORM
设置为android-16
时正常构建。这意味着我没有使用比android-16
更新的任何Android功能。如果我将其更改为android-19
怎么办?因为我没有使用任何更新的Android功能,我认为代码应该仍然可以在OS 4.1上正常工作。请分享你的智慧。问候。
答案 0 :(得分:4)
仿生头没有在android-16和android-19之间改变(他们用android-21改变了很多),所以你可以很好地编译android-19并在android-16设备上运行。
但是NDK平台不应该向后兼容。编译比你的lib运行的平台更高的平台是不对的。
维护NDK中的所有平台并修复错误,因此如果您不使用新功能,则没有理由在更高的平台上构建。