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

解决方法

在项目里的jni/Application.mk文件里加入一行

APP_PLATFORM := android-8

即可.

为什么会有这个警告?

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

<uses-sdk android: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层的却没有变化



本文转自:http://blog.ready4go.com/blog/2013/05/18/resolve-android-ndk-warning-app-platform-android-14-is-larger-than-android-minsdkversion-8/

更多相关文章

  1. GitHub 优秀的 Android(安卓)开源项目 淘宝技术牛p博客整理开发
  2. Activity学习日记(一)
  3. android官方下载链接最新版 (Windows版本)
  4. android官方下载链接最新版 (Windows版本)
  5. 使用 Eclipse PhoneGap 构建 Android(安卓)应用程序入门
  6. Android访问网络,使用HttpURLConnection还是HttpClient?
  7. Android实现网易新闻客户端首页效果
  8. 【Android】 导入项目报错的解决方案
  9. Android(安卓)Studio 3.5中导入项目时关于Gradle错误的解决

随机推荐

  1. android 圆角背景和通过menu键功能弹出po
  2. 高德地图-Android-逆地理转换:经纬度转换
  3. android 软键盘自动弹出和关闭
  4. Android中调用设备的照相和摄像功能
  5. Android在一个TextView里显示不同样式的
  6. android传感器类别
  7. Android System.gc()注意点
  8. Android Studio设置类代码模板
  9. android抓取各种log的方法
  10. android listView的为空时显示