2016-04-25 25 views
1

,我讀了我的應用程序將能夠在這種情況下的最低SDK版本上運行,16:的Android minSdk和依賴條件

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.2" 

    defaultConfig { 
     applicationId "com.github.dht.screenger" 
     minSdkVersion 16 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 
... 

因此,一個API 16設備上運行時與水平23依賴性會發生什麼?

依賴

compile 'com.android.support:appcompat-v7:23.2.0' 
compile 'com.android.support:recyclerview-v7:23.2.0' 
.... 
+0

沒有..我想它會工作然後:-p – AndiGeeky

+0

http://stackoverflow.com/questions/29049908/appcompat-compatibility-and-support-libraries-for-lollipop-if-minimum-sdk-14 –

+0

@Guy,讓我知道如果答案的任何部分不清楚 –

回答

1

主要取決於特徵,並有您使用支持庫或不,原因的情況下,如果是從支持庫那是向後兼容的,則庫功能照顧它否則本機行爲踢,

讓我們採取最常見的情況,狀態欄

API等級16,沒有狀態欄的顏色着色,而是顯示一個黑色的狀態欄,但是從API 21日,病房它的存在,所以在這裏我們可以看到在踢,

特定版本的本地行爲

現在讓我們看看com.android.support:recyclerview-v7:23.2.0

正如你可以看到V7指定該庫是直到版本API第7版(ECLAIR_MR1),所以向後兼容支持庫會爲你做到這一點。

最後的情況下,使用僅適用於SDK

的特定 版本方法發生這種情況時,編譯器將拋出一個錯誤說你不能用這個,因爲最小支持的版本沒有此方法。