以下是gradle信息:
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "com.parma.torupee"
minSdkVersion 26
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(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.android.support:design:26.1.0'
compile 'com.jjoe64:graphview:4.2.1'
}
我已经在Android Studio 3.0.1中开发了该应用程序(没有更新)。 我尝试将目标SDK更改为29,但在gradle文件中收到实现'com.android.support:AppCompat-v7:26.1.0'
和实现'com.android.support:design:26.1.0'
行的错误。
我怎样才能将目标SDK更改为29,这样它既支持最新版本,又支持API级别26(Oreo)? 如有任何帮助,我们将不胜感激!
您可以使用:
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'com.android.support:design:29.0.0'
编译SDK版本编译SDK版本是您编写代码的Android版本。 如果您选择9,那么您可以使用版本28中的所有API编写代码。
最低SDK版本Android操作系统(OS)版本向后兼容。 如果您的minSdkVersion设置为Android版本22,那么您的应用程序将运行在Lolipop(5.1)及以上版本上。
TargetSDK版本您应该将targetSdkVersion设置为您测试过的Android的最新版本。
每当Android新版本问世时,你会想要将targetSdkVersion更新到最新的Android版本,并测试你的应用程序来修复任何问题。 如果你不这样做,谷歌可能会强迫你更新它。 这使您可以使用通常应用于大多数操作系统版本的新安全补丁程序。
增加目标sdk不会影响您定义的最低版本号。
已编辑:更新了对支持库的评论
如果您想将目标SDK更新到28,那么它可能会更容易,因为您可以使用下面的支持库
support:support-compat:28.0.0但是如果您打算使用目标sdk为29,那么您必须将所有支持包迁移到androidx库中。
https://developer.android.com/topic/libraries/support-library/packages
为了更容易地迁移,您可以按照这里给出的stesp操作https://developer.android.com/jetpack/androidx/migrate
如果有帮助就告诉我