Конфликт с зависимостями после создания нового проекта в андроид студии - PullRequest
0 голосов
/ 29 мая 2018

Я использую Android Studio 3.0.1 после того, как я создал новый проект. Он выдаст следующую ошибку:

Ошибка: сбой при выполнении задачи ': app: preDebugAndroidTestBuild'.

Конфликт с зависимостью 'com.android.support:support-annotations' в проекте ': приложение'.Разрешенные версии для приложения (26.1.0) и тестового приложения (27.1.1) отличаются.Подробнее см. https://d.android.com/r/tools/test-apk-dependency-conflicts.html.

Это мой уровень приложения build.gradle файл

apply plugin: 'com.android.application'

    android {
        compileSdkVersion 26
        defaultConfig {

            minSdkVersion 19
            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:27.1.1'
        implementation 'com.android.support.constraint:constraint-layout:1.1.0'
        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'
    }

и это мойверхний уровень build.gradle файл

  // Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'


        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

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

согласно этому сообщению: Ошибка при создании нового проекта с Android Studio 3.0.1

IИзменил мой

implementation 'com.android.support:appcompat-v7:26.1.0'

на

implementation 'com.android.support:appcompat-v7:27.1.1'

, но, поскольку я использую

targetSdkVersion 26

, я не должен использовать библиотеку поддержки 27.1.1.

Как я могу решить эту проблему

Любая помощь принята.Спасибо:)

Ответы [ 5 ]

0 голосов
/ 27 марта 2019

Если вы используете версию библиотеки поддержки как 27.

com.android.support:appcompat-v7:27.1.1

Измените на

targetSdkVersion 27
compileSdkVersion 27

Я думаю, что это решит ваш ответ

0 голосов
/ 29 мая 2018

Это происходит из-за конфликта нескольких библиотек, которые вы добавили в файл Gradle. Если ваша целевая версия - 26, вам необходимо использовать библиотеку для 26 версии API.Просто зайдите в Структура проекта -> .idea -> библиотеки -> удалить папку .Перезапустите андроид студию или перестройте и очистите проект.Проблема решит сделать это.

0 голосов
/ 29 мая 2018

Все зависит от вашей версии targetSdkVersion.Если это 26, вы должны использовать реализацию 'com.android.support:appcompat-v7:26.1.0', а если это 27, вы должны пойти с реализацией 'com.android.support:appcompat-v7:27.1.1'.После этого синхронизируйте проект и, если он не работает, попробуйте очистить и перестроить проект.

0 голосов
/ 29 мая 2018

Попробуйте добавить это внизу build.gradle (первый уровень приложения)

configurations.all {
    resolutionStrategy.eachDependency { details ->
        def requested = details.requested
        if (requested.group == 'com.android.support') {
            if (!requested.name.startsWith("multidex")) {
                details.useVersion '26.1.0'
            }
        }
    }

}

Кредит Eugen Pechanec

0 голосов
/ 29 мая 2018

Вы должны убедиться, что compileSdkVersion равен 27.

Вам необходимо исключить вспомогательную библиотеку из espresso-Core следующим образом:

 androidTestImplementation('com.android.support.test.espresso:espresso- 
    core:3.0.2') {
        exclude group: 'com.android.support', module: 'support-annotations'
 }
...