转载自:http://blog.ready4go.com/blog/2013/05/18/resolve-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文件里加入一行

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-3
android-4
android-5
android-8
android-9
android-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层的却没有变化

WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 8的更多相关文章

  1. Android NDK: WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 8

    在使用Eclipse 直接编译NDK,有时候会报类似以下错误 Android NDK: WARNING: APP_PLATFORM android-14 is larger than android: ...

  2. android 14.04 64位 adb cannot run program adb

    按照网上的说法: Failed to get the adb version: Cannot run program "adb": error=2, 没有那个文件或目录 64位系统 ...

  3. Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程

    Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程   在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...

  4. 王家林的81门一站式云计算分布式大数据&移动互联网解决方案课程第14门课程:Android软硬整合设计与框架揭秘: HAL&Framework &Native Service &App&HTML5架构设计与实战开发

    掌握Android从底层开发到框架整合技术到上层App开发及HTML5的全部技术: 一次彻底的Android架构.思想和实战技术的洗礼: 彻底掌握Andorid HAL.Android Runtime ...

  5. Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法

    Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法跟Ubuntu 12.04 - 13.10 以及jellybean编译环境配置没多大区别, 顺便记录下而已: Ub ...

  6. ubuntu 14.04.5 编译Android 4.4.4 r1源码(最新)

    本文博客链接:http://blog.csdn.net/qq1084283172/article/details/54426189 吐槽:ubuntu系统真是让人又爱又恨,也有可能是VMware Wo ...

  7. android 14 进度条和拖动条

    进度条: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:l ...

  8. [转][android][利用JNI技术在Android中调用、调试C++代码]

    在Android中调用C++其实就是在Java中调用C++代码,只是在windows下编译生成DLL,在Android中会生成Linux系统下的.so文件(好吧,其实我基本没用过Linux). 没写过 ...

  9. 深入理解Android(1)——理解Android中的JNI(上)

    我参加了CSDN博客之星评选,如果在过去的一段时间里阳光小强的博客对你有所帮助,在这里希望能投上您宝贵的一票,每天都可以投一次:http://vote.blog.csdn.net/blogstar20 ...

随机推荐

  1. Servlet+JSP+JavaBean开发模式(MVC)介绍

    好伤心...写登陆注册之前看见一篇很好的博文,没有收藏,然后找不到了. 前几天在知乎上看见一个问题,什么时候感觉最无力. 前两天一直想回答:尝试过google到的所有solve case,结果bug依 ...

  2. 53个要点提高PHP编程效率

    1.如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍. 2.$row[’id’] 的速度是$row[id]的7倍.3.echo 比 print 快,并且使用echo ...

  3. 统计查询-sql

    select --总注册人数(select COUNT(*) from [YYD_Users_RegInfo]) as TotalCount,--pc端注册人数(select COUNT(*) fro ...

  4. MongoDB Aggregate Methods(2) MonoDB 的 3 种聚合函数

    aggregate(pipeline,options) 指定 group 的 keys, 通过操作符 $push/$addToSet/$sum 等实现简单的 reduce, 不支持函数/自定义变量 g ...

  5. [转载]Android.mk简介

    2013-12-23 11:26:54 转载自: http://blog.sina.com.cn/s/blog_67d8d7060100q8un.html 请到转载地址阅读原文, 转载以备查询.

  6. C#如何以管理员身份运行程序

    在使用winform程序获取调用cmd命令提示符时,如果是win7以上的操作系统,会需要必须以管理员身份运行才会执行成功,否则无效果或提示错误. 比如在通过winform程序执行cmd命令时,某些情况 ...

  7. 【NOIP模拟题】【二分】【倍增】【链表】【树规】

    3 计算几何3.1 题意描述花花对计算几何有着浓厚的兴趣.他经常对着平面直角坐标系发呆,思考一些有趣的问题.今天,他想到了一个十分有意思的题目:首先,花花会在x 轴正半轴和y 轴正半轴分别挑选n 个点 ...

  8. 兼容 IE,firfox 的时间日期出现 NaN

      //当前日期加上天数后的新日期.function AddDays(days) { var d = new Date(); var year = d.getFullYear(); var day = ...

  9. MJPhotoBrowser 两个bug:回到小图模式时会闪动&大图太靠近底部

    最近项目需要写网络的相片视频浏览的库, 没时间重写,使用了MJPhotoBrowser,里面的一些bug 和解决写在下面 1.-[MJPhotoLoadingView setProgress:]: m ...

  10. 访问FLASH设备-W25X16

    /************************************* *文件名称:w25x16_spi.c * *功能描述:访问和写入数据到闪存w25x16 * *建立日期:2016-03-1 ...