Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 在AndroidManifest.xml中uses-sdk內屬性意思

在AndroidManifest.xml中uses-sdk內屬性意思

編輯:關於Android編程

在AndroidMenifest.xml中,常常會有下面的語句:
復制代碼 代碼如下:
<uses-sdk android:minSdkVersion="4"
android:targetSdkVersion="10"
android:maxSdkVersion="10" />

在default.properties中,會看到下面的語句:
target=android-10
如果是使用Eclipse的話,還可能會看到這樣的警告:
Attribute minSdkVersion (4) is lower than the project target API level (10)

那麼,這裡面的minSdkVersion、targetSdkVersion、maxSdkVersion、target API level四個數值到底有什麼區別?

minSdkVersion與maxSdkVersion比較容易理解,就是在安裝程序的時候,如果目標設備的API版本小於minSdkVersion,或者大於maxSdkVersion,程序將無法安裝。一般來說沒有必要設置maxSdkVersion。

targetSdkVersion相對復雜一些,如果設置了此屬性,那麼在程序執行時,如果目標設備的API版本正好等於此數值,他會告訴Android平台:此程序在此版本已經經過充分測,沒有問題。不必為此程序開啟兼容性檢查判斷的工作了。也就是說,如果targetSdkVersion與目標設備的API版本相同時,運行效率可能會高一些。
但是,這個設置僅僅是一個聲明、一個通知,不會有太實質的作用,比如說,使用了targetSdkVersion這個SDK版本中的一個特性,但是這個特性在低版本中是不支持的,那麼在低版本的API設備上運行程序時,可能會報錯:java.lang.VerifyError。也就是說,此屬性不會幫你解決兼容性的測試問題。你至少需要在minSdkVersion這個版本上將程序完整的跑一遍來確定兼容性是沒有問題的。(這個問題確實讓人頭疼)

在default.properties中的target是指在編譯的時候使用哪個版本的API進行編譯。

綜上,上面的四個值其實是作用於不同的時期:
target API level是在編譯的時候起作用,用於指定使用哪個API版本(SDK版本)進行編譯。
minSdkVersion和maxSdkVersion是在程序安裝的時候起作用,用於指定哪些版本的設備可以安裝此應用。
targetSdkVersion是在程序運行的時候起作用,用於提高指定版本的設備上程序運行體驗。

這四個數值在程序編譯時也沒有嚴格的檢查,比如說,你可以將minSdkVersion設置的比maxSdkVersion還大,他會自動忽略掉錯誤的maxSdkVersion。

補充:本站還提供了一個關於Android Manifest功能與權限的在線查詢表供大家參考查詢:

Android Manifest功能與權限描述大全:

http://tools.jb51.net/table/AndroidManifest

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved