2016-04-25 27 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

的特定 版本方法发生这种情况时,编译器将抛出一个错误说你不能用这个,因为最小支持的版本没有此方法。