gpt4 book ai didi

java - 在android studio中使用具有不同sdk版本的多个库

转载 作者:行者123 更新时间:2023-11-29 23:06:01 30 4
gpt4 key购买 nike

有几个问题,但还没有相关的答案。在我的 android studio 项目中,我使用了几个不同版本的库。现在我在运行项目时遇到错误。我有一些库有两个不同的 SDK 版本。一个是 sdk=25.3.1 另一个是 sdk=28.0.0这是我不同的 build.gradle 文件。

My Project build.gradle file

buildscript {
repositories {
google()
jcenter()
}
dependencies {

classpath 'com.android.tools.build:gradle:3.0.0'
classpath 'com.google.gms:google-services:3.2.0'
classpath 'com.github.dcendents:android-maven-gradle-plugin:2.0'
}
}

allprojects {
repositories {
google()
maven { url 'http://raw.github.com/saki4510t/libcommon/master/repository/' }
jcenter()
}
}

task clean(type: Delete) {
delete rootProject.buildDir
}

ext {
supportLibraryVersion = '28.0.0' // variable that can be referenced to keep support libs consistent
supportLibVersion = '25.3.1'
commonLibVersion= '1.5.20'
//versionBuildTool = '26.0.2'
//versionCompiler = 25
//versionTarget = 22
//versionNameString = '1.0.0'
javaSourceCompatibility = JavaVersion.VERSION_1_7
javaTargetCompatibility = JavaVersion.VERSION_1_7
}

app: build.gradle file

apply plugin: 'com.android.application'

android {
compileSdkVersion 25
buildToolsVersion '26.0.2'
defaultConfig {
applicationId "com.jiangdg.usbcamera"
minSdkVersion 19
targetSdkVersion 22
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
testCompile 'junit:junit:4.12'
compile project(':libusbcamera')
compile project(':libmlkit')
compile 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
implementation 'com.android.support:design:25.3.1'
}

My Library build.gradle file

apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven'
group='com.github.jiangdongguo'

android {
compileSdkVersion 25
buildToolsVersion '26.0.2'

defaultConfig {
minSdkVersion 19
targetSdkVersion 22
versionCode 1
versionName "1.0"

testInstrumentationRunner
"android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}


dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
testCompile 'junit:junit:4.12'
compile("com.serenegiant:common:${commonLibVersion}") {
exclude module: 'support-v4'
}
}

Another Library build.gradle

apply plugin: 'com.android.library'

android {
compileSdkVersion 28
defaultConfig {

minSdkVersion 19
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
aaptOptions {
noCompress "tflite"
}
}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:support-v4:28.0.0'
implementation 'com.android.support:exifinterface:28.0.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.google.firebase:firebase-ml-vision:18.0.1'
implementation 'com.google.firebase:firebase-ml-vision-image-label-model:17.0.2'
implementation 'co`apply plugin: 'com.google.gms.google-services'

}

出现以下错误..

Android dependency 'com.android.support:appcompat-v7' has different version >for the compile (25.3.1) and runtime (28.0.0) classpath. You should manually >set the same version via DependencyResolution

最佳答案

您必须在 build.gradle 文件中为所有项目设置配置

subprojects {
afterEvaluate {
project -> if (project.hasProperty("android")) {
android {
compileSdkVersion 28
buildToolsVersion '28.0.0'
}
}
}

然后在您的应用程序 build.gradle 文件中替换所有其他库的配置

 configurations.all {
resolutionStrategy.eachDependency { details ->
if (details.requested.group == 'com.android.support') {
details.useVersion "28.0.0"
}
}
}

关于java - 在android studio中使用具有不同sdk版本的多个库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56526194/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com