Android中minSdkVersion、targetSdkVersion、maxSdkVersion的作用
轉(zhuǎn)載自:Android中minSdkVersion、targetSdkVersion、maxSdkVersion的作用 - 誰與爭鋒的專欄 - 博客頻道 - CSDN.NET ?http://blog.csdn.net/lovexieyuan520/article/details/48711221
還可參考:Android <uses-sdk> 和 target 分析 - - 博客頻道 - CSDN.NET ?
http://blog.csdn.net/fuzhengchao/article/details/28121193/
在AndroidManifest.xml中,有uses-sdk這樣一個節(jié)點,有三個屬性分別是:Android:minSdkVersion,android:targetSdkVersion,android:maxSdkVersion但是大家未必全知道是什么意思,網(wǎng)上也沒說清楚,現(xiàn)在根據(jù)我的開發(fā)給大家梳理一下這點知識:
android:minSdkVersion:指明應(yīng)用程序運行所需的最小API level。如果不指明的話,默認(rèn)是1。什么意思,就是說如果用戶的機器的android版本少于這個值,是不能安裝這個程序的,例如:android:minSdkVersion="14"即android4.0,如果你把這個apk安裝在android:minSdkVersion="10"即android2.3.3那是不能安裝的。如果是在google play上,是不會顯示這個應(yīng)用的,直接過濾掉了。
android:targetSdkVersion:標(biāo)明應(yīng)用程序目標(biāo)API Level的一個整數(shù)。如果不設(shè)置,默認(rèn)值和minSdkVersion相同。什么意思,就是說你的應(yīng)用的目標(biāo)版本是哪個,例如在android3.0一下是有menu鍵的,但是在android4.0以上是沒有menu鍵的,比如你設(shè)置的菜單,通過menu鍵呼出,那么你的android:targetSdkVersion就應(yīng)該設(shè)置為11以下,不然的話就會不兼容android3.0以上的版本,你就沒有地方呼出menu菜單了,看圖:
設(shè)置android:targetSdkVersion="10"時的效果是:
如果設(shè)置為android:targetSdkVersion="11"則效果為:
這個時候我們就沒得地方來呼出菜單,所以這個時候設(shè)置android:targetSdkVersion就很有用。
android:maxSdkVersion:標(biāo)明可以運行你的應(yīng)用的最高API Level版本。這個在Android1.5, 1.6, 2.0 和2.0.1上時,如果應(yīng)用設(shè)置的maxSdkVersion 值低于系統(tǒng)本身使用的API Level,系統(tǒng)將不會允許安裝該應(yīng)用。在系統(tǒng)升級后,新系統(tǒng)會重新校驗這個值,如果新系統(tǒng)的API Level高于這個值,新系統(tǒng)會刪除你的應(yīng)用。在高于2.0.1的系統(tǒng)上,安裝應(yīng)用時不會再檢驗應(yīng)用中設(shè)置的maxSdkVersion值,在系統(tǒng)升級后也不會重新校驗這個值。但是在向用戶展示可用的應(yīng)用時,Google Play會繼續(xù)使用這個屬性進行過濾,你的應(yīng)用在高版本上就不顯示出來。這個我們一般不設(shè)置。
總結(jié)
以上是生活随笔為你收集整理的Android中minSdkVersion、targetSdkVersion、maxSdkVersion的作用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Caffe小玩意
- 下一篇: Android Studio如何发布AP