Компилировать appcompat v7: 26. + ошибка при добавлении игровых сервисов для поставщика местоположения слияния
У меня проблема, и я посмотрел на возможные повторяющиеся вопросы и ответы, и я думаю, что этим не отвечают другие, поэтому спрашивайте здесь.
Я обновил свои игровые сервисы, чтобы воспользоваться поставщиком плавного доступа, и теперь appcompat в моем gradle показывает ошибку.
Итак, я создал новый проект и проверил build.gradle в новом проекте и имел точно такой же appcompat, но мой проект показывает ошибку.
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion "26.0.0"
defaultConfig {
applicationId "au.com.itmobilesupport.sqltwo"
minSdkVersion 17
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 {
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:26.+'
compile 'com.android.support:recyclerview-v7:26.+'
compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:+'
testCompile 'junit:junit:4.12'
compile 'com.google.android.gms:play-services-maps:11.0.0'
compile 'com.google.android.gms:play-services:11.0.1'
}
В этой строке отображается ошибка:
compile 'com.android.support:appcompat-v7:26.+'
Но в новом проекте это прекрасно. Почему я получаю сообщение об ошибке?
UPDATE:
Если я удалю эти две строки, ошибка исчезнет:
compile 'com.google.android.gms:play-services-maps:11.0.0'
compile 'com.google.android.gms:play-services:11.0.1'
Но мне они нужны, так что все еще есть ошибка.
Ответы
Ответ 1
Наконец, разрешил проблему с помощью ответа ZeroOne на аналогичный вопрос.
Что заставило меня взглянуть на ответ ZeroOnes: Google дал мне причину, но не как ошибку. Моя проблема заключалась в том, что следующая строка слишком обширна и добавлено много дополнительных зависимостей, что сделало бы приложение излишне большим.
compile 'com.google.android.gms:play-services:11.0.1'
Мне просто нужно было быть более конкретным, и ошибка исчезла.
Вот окончательный gradle.
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion "26.0.0"
defaultConfig {
applicationId "au.com.itmobilesupport.sqltwo"
minSdkVersion 17
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 {
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:26.+'
compile 'com.android.support:recyclerview-v7:26.+'
compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:+'
testCompile 'junit:junit:4.12'
compile 'com.google.android.gms:play-services-maps:11.0.1'
compile 'com.google.android.gms:play-services-location:11.0.1'
}
И это специфицированная строка, которую я меняю выше:
compile 'com.google.android.gms:play-services-location:11.0.1'
Надеюсь, это поможет кому-то, кто сталкивается с той же проблемой.
Ответ 2
Добавьте эти строки в свой build.gradle
файл, чтобы получить библиотеки, которые у вас отсутствуют на основе сайта Google.
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
Внимание: использование динамических зависимостей (например, palette-v7: 23.0. +) может привести к неожиданным обновлениям версии и несовместимости регрессии. Мы рекомендуем явно указать версию библиотеки (например, palette-v7: 25.4.0).
Ответ 3
Более конкретно с помощью compile 'com.google.android.gms: play-services-location: 11.0.1' вместо компиляции 'com.google.android.gms: play-services: 11.0.1' сохранен мой проект также, tks много парней.