天天看點

Android官方開發文檔Training系列課程中文版:支援不同的裝置之支援不同的平台版本

每當APP使用了Android所提供的最新版的API時,應用應該繼續對老版本提供支援,直到所有的裝置都更新到最新版。這一節将會展示如何使用更流行的新版本API時還能繼續良好的支援老版本。

檔案AndroidManifest.xml較長的描述了APP相關的資訊以及支援的Android版本。特别的,< uses-sdk标簽中的minSdkVersion,targetSdkVersion屬性分别指明了APP相容的最低版本以及最高版本:

每當Android的新版本釋出,一些風格與習慣可能會被改變。為了允許APP采用這些更為優秀的變化,以確定APP對每一台使用者裝置進行風格比對,你應該設定targetSdkVersion的值為最新的安卓可用版本。

Android在Build常量類中提供了每一個平台版本的唯一編碼。在APP中使用這些編碼以確定這些API在目前的系統上是可用的。

Note:當解析XML資源時,Android會自動忽略目前裝置不支援的xml屬性。是以在使用XML的時候可以完全放心。舉個例子,如果你設定了targetSdkVersion=”11”,然後包含了ActionBar的APP預設是跑在Android 3.0及以上的。然後為了向ActionBar上添加菜單按鈕,你需要在菜單資源XML檔案中添加android:showAsAction=”ifRoom”。在交叉版本的XML檔案中這樣做是安全的,因為老版本的Android平台會自動忽略showAsAction屬性(是以,你就不用專門再在res/menu-v11/中做區分)。

Android為APP提供了與底層系統感官上相一緻的使用者體驗主題。這些主題可以通過清單檔案應用到APP中。通過使用這些内嵌的風格和主題,你的APP很自然的可以和最新的Android版本在感官上保持一緻。

如果想使Activity看起來像對話框:

如果想使Activity有一個透明的背景:

如果要使用在/res/values/styles.xml下定義的自定義主題:

如果要将自定義主題應用到整個APP中,在< application>标簽中添加 android:theme 屬性:

繼續閱讀