zoukankan      html  css  js  c++  java
  • WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 8

    转载自: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层的却没有变化

  • 相关阅读:
    一些常用的代码评审工具
    Atlassian旗下一干team build软件
    Jira功能全介绍
    项目经验分享
    网址、下载地址
    Java 字节码解读
    Gitlab 安装
    博客园设置
    mybatis 遇到空串无法判断
    Shell 脚本入门
  • 原文地址:https://www.cnblogs.com/frydsh/p/3435553.html
Copyright © 2011-2022 走看看