minSdkVersion、maxSdkVersion、targetSdkVersion、target釋義

minSdkVersion與maxSdkVersion比較容易理解,就是在安裝程序的時候,若是目標設備的API版本小於minSdkVersion, 或者大於maxSdkVersion,程序將沒法安裝。通常來講沒有必要設置maxSdkVersion。java

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

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

綜上,上面的四個值實際上是做用於不一樣的時期:
target API level是在編譯的時候起做用,用於指定使用哪一個API版本(SDK版本)進行編譯。 minSdkVersion和maxSdkVersion是在程序安裝的時候起做用, 用於指定哪些版本的設備能夠安裝此應用。 targetSdkVersion是在程序運行的時候起做用,用於提升指定版本的設備上程序運行體驗。io

相關文章
相關標籤/搜索