一、html
二、minSdkversion和targetSdkVersion相信不少人都不太理解,我在網上也看了許多關於這二者區別的文章,感受說的都很模糊,直到我在stackOverFlow看到android Min SDK Version vs. Target SDK Version這篇文章後,我才終於弄清楚如何去設置minSdkVersion和targetSdkVersion,如今我將分享給你們。android
簡言之,這篇文章的目的是爲了區分minSDK和targetSDK,這二者至關於一個區間,你能夠用到targetSDK中最新的API和最酷的新功能,但你又不得不向下兼容到minSDK,保證這個區間內的設備均可以正常的運行你的app。換句話說,你想使用Android剛剛推出的新特性,但這對於你的app又不是必須的,你就能夠將targetSDK設置爲你想使用新特性的SDK版本,minSDK設置成低版本保證全部人均可以使用你的app。app
舉一個例子:假如你想給你的app加入大量的手勢操做(sdk 7才引入的),然而這些手勢操做能夠被Button啊或menu等代替,在這種狀況下,手勢操做就是一個額外的加分功能,而不是一個必須的功能,所以你就須要把targetSDK設置爲7,把minSDK設置爲3(這是舉個例子,如今沒人還在用這麼老的設備了)這樣即便是使用老設備的用戶也能夠用你的app了。而後你所要作的就是要在代碼裏判斷版本,若是是大於等於7的版本中就使用手勢操做,小於7的版本中就使用button等代替,這樣使用了新手機的用戶就能夠體驗到你app中酷炫的新功能了。htm
另一個例子:若是你想給你的項目加入Android 5.0的Material Design,有一些用戶可能會升級到5.0而使用到你的新特性,而有一部分用戶的手機硬件太老,不支持升級到5.0,除非他們換新手機,那麼你就要爲他們進行向下兼容,不至於損失這部分用戶,這樣你的targetSDK設置爲21,minSDK能夠設置爲8get