1. 程式人生 > >compileSdkVersion、minSdkVersion和targetSdkVersion的區別

compileSdkVersion、minSdkVersion和targetSdkVersion的區別

compileSdkVersion

compileSdkVersion就是你建立Android專案的時候選擇的SDK版本,編譯過程會檢查是否有使用廢棄API,所以升級compileSdkVersion有助於發現是否有廢棄的API,為使用新API做好準備,但是修改compileSdkVersion不會影響應用的行為,因為最終compileSdkVersion不會被打包進apk中。

minSdkVersion

minSdkVersion決定了應用所能執行的最低Android系統版本,使用較低的minSdkVersion,可以覆蓋到最大的人群

targetSdkVersion

targetSdkVersion是這三者中最重要的一個,它是Android提供向前相容的主要依據,它的修改會帶來不同的行為特性,在Android系統每次大版本釋出後,一般都會有新的特性出現,應用要支援這些新特性,就需要升級targetSdkVersion。targetSdkVersion升級後,務必要進行全面測試,謹記!

三者的關係

總的來說,三者的關係是這樣的:

minSdkVersion <= targetSdkVersion <= compileSdkVersion

minSdkVersion為了覆蓋最大人群,做到儘可能小;compileSdkVersion應該使用最新的SDK進行編譯,可以及時的更新使用新的API;targetSdkVersion同樣也應該適配的最新的SDK版本,支援最新的特性,這是最理想的,三者的關係可以變化為:

minSdkVersion < targetSdkVersion == compileSdkVersion

參考資料

如何選擇 compileSdkVersion, minSdkVersion 和 targetSdkVersion