Android Studio创建的build.gradle中的minSDK实现过高
我刚刚创建了我的第一个Android Studio项目。我选择了minsdk15。我担心为什么编译SDK的默认值更高。。安全吗?在此配置中,我的应用程序是否会在具有API 15的设备上运行?但是真正的问题发生在我将compileSdkVersion和targetSdkVersion切换到24时。到处都有错误,而且Android Studio创建的build.gradle中的minSDK实现过高,android,android-studio,build.gradle,Android,Android Studio,Build.gradle,我刚刚创建了我的第一个Android Studio项目。我选择了minsdk15。我担心为什么编译SDK的默认值更高。。安全吗?在此配置中,我的应用程序是否会在具有API 15的设备上运行?但是真正的问题发生在我将compileSdkVersion和targetSdkVersion切换到24时。到处都有错误,而且implementation'com.android.support:appcompat-v7:26.1.0'对于我的目标SDK来说过高。那么,如果min SDK的实现率较低,为什么An
implementation'com.android.support:appcompat-v7:26.1.0'
对于我的目标SDK来说过高。那么,如果min SDK的实现率较低,为什么Android Studio会在那里设置如此高的实现率呢
TL;医生:
为什么执行率如此之高?在这种配置下,它能用min API工作吗??为什么Android Studio会这样工作
build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "com.q_back.audiocrator"
minSdkVersion 15
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}
没关系,事实上,编译器dk大于最小值是正常的。支持版本的库版本应与编译器DK匹配。升级到26或降级支持库。所有SDK版本等于或高于Minsdk版本的android设备都可以运行该应用程序。
最好使用与编译器SDK相同版本的SDK工具,这不会真正影响可以运行应用程序的设备。主要原因是一些Google API无法在较低的SDK级别上工作。如果您对
compileSdkVersion
vsminSdkVersion
vstargetSdkVersion
感到困惑,您应该认真阅读。是的,我读过这篇文章,但是没有关于依赖项和实现'com.android.support:appcompat-v7:26.1.0'
的内容,有一个专门关于支持库依赖项和编译dkversion
的内容。但是对于具有较低API的设备呢?如果implementation'com.android.support:appcompat-v7:26.1.0'
更高,应用程序会对它们起作用吗?是的。这就是Minsdk版本所控制的。但是,如果使用在两者之间添加的函数,则在使用它们时会崩溃(或者需要添加版本检查,如果检查失败,则不使用它们)。