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層的卻沒有變化


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM