去除警告 Android NDK: WARNING: APP_PLATFORM Android-14 Is Larger Than android:minSdkVersion 8

解决Android NDK警告:APP_PLATFORM版本大于android:minSdkVersion
本文将解释Android NDK警告的原因,并提供在Application.mk文件中加入特定行以解决该问题的方法。同时,阐述了NativeAPIVersion与JavaAPIVersion之间的差异及其对应用程序兼容性的影响。

问题:
去除警告 Android NDK: WARNING: APP_PLATFORM Android-14 Is Larger Than android:minSdkVersion 8
解决方法:
在项目里的jni/Application.mk文件里加入一行
APP_PLATFORM := android-8
即可.
为什么会有这个警告?
在android上项目里,可以在AndroidManifest.xml中写入

来表示程序可以运行的最低android设备是android 2.2(API Version 8), 经过详细测试的目标android版本是android 4.2.2(API Version 17).这里定义的是Java API Version
再来看一下ndk(版本r8e)目录下的platforms文件夹,可以看到
android-3android-4android-5android-8android-9android-14
一共有6个文件夹,分别表示相应的Native API Version

看到这里就明白了,那个警告的意思就是说,使用的Native API Version比最低版本Java API要高,可能导致的问题就是:
在Native Code里使用了一个platforms/android-14下的API函数,然后程序在 android-8 的设备上运行,当然这个函数在android-8设备上是不存在的,就会崩溃了

为什么Native API的版本数量会少于Java API?
因为android在版本升级的时候,有时候只升级了Java层的API,而Native层的却没有变化

Android NDK: android-16 is unsupported. Using minimum supported version android-21. Android NDK: WARNING: APP_PLATFORM android-21 is higher than android:minSdkVersion 1 in /Users/zhuqingbin/Downloads/Android-TiffBitmapFactory-master/tiffbitmapfactory/src/main/AndroidManifest.xml. NDK binaries will *not* be compatible with devices older than android-21. See https://android.googlesource.com/platform/ndk/+/master/docs/user/common_problems.md for more information. Android NDK: WARNING:/Users/zhuqingbin/Downloads/Android-TiffBitmapFactory-master/tiffbitmapfactory/src/main/jni/Android.mk:tiff: non-system libraries in linker flags: /Users/zhuqingbin/Downloads/Android-TiffBitmapFactory-master/tiffbitmapfactory/src/main/jni/libs/arm64-v8a/libjpeg.a Android NDK: This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES Android NDK: or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the Android NDK: current module Android NDK: WARNING:/Users/zhuqingbin/Downloads/Android-TiffBitmapFactory-master/tiffbitmapfactory/src/main/jni/Android.mk:tiff: non-system libraries in linker flags: /Users/zhuqingbin/Downloads/Android-TiffBitmapFactory-master/tiffbitmapfactory/src/main/jni/libs/armeabi-v7a/libjpeg.a Android NDK: This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES Android NDK: or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the Android NDK: current module make: Nothing to be done for 'Android.mk'.
最新发布
10-16
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值