Ответ 1
Для тех людей, которые все еще сталкиваются с этой проблемой, просто добавьте эту строку в свои зависимости.
androidTestCompile 'com.android.support:support-annotations:23.3.0'
Он решил мою проблему.
Привет, я использовал поддержку android v4 23.1.1 и недавно попытался обновить ее до 23.3.0 (последняя, когда это было задано), но я получил следующую ошибку:
Ошибка: конфликт с зависимостью "com.android.support:support-annotations". Разрешенные версии для приложения (23.3.0) и тестового приложения (23.1.1) различаются. Подробнее см. http://g.co/androidstudio/app-test-app-conflict.
До сих пор я нашел это https://code.google.com/p/android/issues/detail?id=206137
Я пошел на обе ссылки, но не смог исправить свою проблему, как я могу исправить эту проблему?
Edit:
У меня это в моих зависимостях
compile 'com.android.support:support-v4:23.3.0'
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.android.support:recyclerview-v7:23.3.0'
compile 'com.android.support:cardview-v7:23.3.0'
compile 'com.android.support:design:23.3.0'
Предварительно все версии были 23.1.1
, и он работал нормально, произошла ошибка после обновления
Edit:
Gradle Version 2.10
Gradle Plugin Version 2.0.0
buildToolsVersion "23.0.3"
Для тех людей, которые все еще сталкиваются с этой проблемой, просто добавьте эту строку в свои зависимости.
androidTestCompile 'com.android.support:support-annotations:23.3.0'
Он решил мою проблему.
Для тех, кто все еще сталкивается с проблемой, выше ответ не помог мне в Android-версии 2.2 Preview.
добавьте это в свой gradle файл.
configurations.all {
resolutionStrategy {
force 'com.android.support:support-annotations:23.1.1'
}
}
Это исправило мою проблему.
Просто проиллюстрируйте ответ Akshayraj
Оригинальный Gradle файл:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
[...]
compile 'com.android.support:support-annotations:25.3.0'
androidTestCompile 'com.android.support.test:runner:0.5'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2'
}
Полученная ошибка:
Ошибка: конфликт с зависимостью 'com.android.support:support-annotations' в проекте ': приложение'.
Разрешенные версии для приложения (25.1.0) и тестового приложения (23.1.1) отличаются.
Подробнее см. http://g.co/androidstudio/app-test-app-conflict. "
FIXED, когда я добавил:
androidTestCompile 'com.android.support:support-annotations:25.3.0'
Конечный файл:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
[...]
compile 'com.android.support:support-annotations:25.3.0'
androidTestCompile 'com.android.support:support-annotations:25.3.0'
androidTestCompile 'com.android.support.test:runner:0.5'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2'
}
У моего orignal app.gradle было:
dependencies {
// App dependencies
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
// Testing-only dependencies
androidTestCompile 'com.android.support.test:runner:0.3'
androidTestCompile 'com.android.support.test:rules:0.3'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2'
}
что привело к следующей ошибке:
Ошибка: конфликт с зависимостью "com.android.support:support-annotations". Разрешенные версии для приложения (23.4.0) и тестового приложения (22.2.0) различаются. Подробнее см. http://g.co/androidstudio/app-test-app-conflict.
После прочтения ссылки, предложенной по ошибке, я нашел строки тезисов:
Когда проводятся контрольные испытания, как основной APK, так и тест APK совместно использовать один и тот же путь. Gradle сборка завершится неудачно, если основной APK и тест APK использует одну и ту же библиотеку (например, Guava), но в разных версии. Если Gradle не понял этого, ваше приложение может вести себя по-разному во время тестов и во время обычного прогона (включая сбой в один из случаев).
Итак, я изменил свои зависимости app.gradle на:
dependencies {
// App dependencies
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
// Testing-only dependencies
androidTestCompile 'com.android.support:support-annotations:23.3.0'
androidTestCompile 'com.android.support.test:runner:0.3'
androidTestCompile 'com.android.support.test:rules:0.3'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2'
}
Даже после вышеупомянутого изменения Gradle не понравилось:-(:
Ошибка: конфликт с зависимостью "com.android.support:support-annotations". Разрешенные версии для приложения (23.4.0) и тестового приложения (23.3.0) отличаются. Подробнее см. http://g.co/androidstudio/app-test-app-conflict.
Изменение версии test apk было другим! Поэтому я изменил строку версии, как показано ниже, которая работает для меня:
(нирвана)
dependencies {
// App dependencies
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0' // main APK
// Testing-only dependencies
androidTestCompile 'com.android.support:support-annotations:23.4.0' //test APK
androidTestCompile 'com.android.support.test:runner:0.3'
androidTestCompile 'com.android.support.test:rules:0.3'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2'
}
Вы должны использовать ту же версию для APK приложений и androidTest. Чтобы сделать это, укажите ту же версию, что и ваше приложение,
androidTestCompile 'com.android.support:support-annotations:24.1.1'
где 24.1.1 - номер версии зависимости, используемой в вашем приложении
compile 'com.android.support:design:24.1.1'
/*
Resolves dependency versions across test and production APKs, specifically, transitive
dependencies. This is required since Espresso internally has a dependency on support-annotations.
*/
configurations.all {
resolutionStrategy.force "com.android.support:support-annotations:$rootProject.supportLibraryVersion"
}