去除警告 Android NDK: WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 8

使用ndk-build编译项目的时候会看到一个警告“Android NDK: WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 8”,虽然”不怎么”影响结果,看着碍眼

解决方法

在项目里的jni/Application.mk,如果jni文件夹下木有Application.mk,可以新建一个Application.mk,文件里加入一行

APP_PLATFORM := android-8

即可.

为什么会有这个警告?

在android上项目里,可以在AndroidManifest.xml中写入

minSdkVersion="8" android:targetSdkVersion="17"/>

来表示程序可以运行的最低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层的却没有变化

支持一下


更多相关文章

  1. Android(安卓)高德地图 Native method not found: com.autonavi.
  2. Android程序开发中关于设置全屏无效问题
  3. 安卓开发,版本号管理总结android:versionCode
  4. C盘瘦身
  5. Android(安卓)开发环境配置
  6. android studio升级方法
  7. Android检查版本更新下载安装
  8. Android笔记: Android版本号
  9. Android(安卓)build/envsetup.sh 脚本分析(lunch函数)

随机推荐

  1. Android中XML解析-SAX解析
  2. 中国Android应用商店汇总介绍
  3. 通过Android(安卓)studio将代码上传到git
  4. Android 第七天重置版_BroadCastReceiver
  5. Android xliff和字符串资源[Android开发
  6. Android 高性能编码一:多线程并发或分布式
  7. Android 中获取未安装APK的 图标 || icon
  8. Android framework学习
  9. android之Fragment(官网资料翻译)
  10. Android 利用广播实现黑名单【指定号码】