Я использовал версию play-service-maps-8.1.0 для своего приложения Google Map для Android. Затем я пытаюсь добавить новую службу Google Place 1.0.0. Теперь это дает мне, что все библиотеки gms должны быть одной и той же ошибкой версии. Я не могу найти какой-либо картографический сервис в справочниках по новым сервисам Google.
implementation 'com.google.android.gms:play-services-maps:8.1.0'
implementation 'com.google.android.gms:play-services-maps:16.1.0'
implementation 'com.google.android.gms:play-services-maps:16.0.0'
implementation 'com.google.android.gms:play-services-maps:16.0.1'
никто из них не работает с
implementation 'com.google.android.libraries.places:places:1.0.0'
Как я могу работать с сервисами мест и карт в одном приложении?
Все мои зависимости от Gradle.
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.squareup.okhttp3:okhttp:3.9.1'
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.android.support:design:26.1.0'
implementation 'com.google.android.gms:play-services-maps:8.1.0'
implementation 'com.google.android.libraries.places:places:1.0.0'
}
см. места:1.0.0: он втягивается play-services-maps:16.0.0
сам по себе -
и места: 1.1.0 делает то же самое с play-services-maps:16.1.0
.
Вам нужно добавить это в корневой проект buildscript
dependencies
:
classpath "com.google.gms:google-services:4.2.0"
и это будет Java модуля dependencies
:
dependencies {
implementation "com.android.support:design:28.0.0"
implementation "com.android.support:support-v4:28.0.0"
implementation "com.android.support:appcompat-v7:28.0.0"
implementation "com.android.support.constraint:constraint-layout:1.1.3"
implementation ("com.google.android.libraries.places:places:1.1.0") {
exclude group: "com.android.support"
}
implementation "com.squareup.okhttp3:okhttp:3.12.1"
implementation "com.google.code.gson:gson:2.8.5"
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"
}
apply plugin: "com.google.gms.google-services"
Для Places, без каких-либо зависимостей Firebase или плагина Play Services, вам все равно нужно добавить как минимум эти два ресурса string
(тем не менее, проект необходимо настроить на Firebase, чтобы получить требуемый google_services.json
, который содержит значения для заменить):
<?xml version = "1.0" encoding = "utf-8"?>
<resources>
<! -- Present in all applications -->
<string name = "google_app_id" translatable = "false">YOUR_GOOGLE_APP_ID</string>
<! -- Present in applications with the appropriate services configured -->
<string name = "google_api_key" translatable = "false">YOUR_MAPS_API_KEY</string>
</resources>
см. документация.
Должен ли я отредактировать свой предыдущий код для новой версии сервисов и удалить реализацию gms?
все еще получаю ту же ошибку. когда я пытаюсь использовать карту маршрутов, он говорит, что обновите игровые сервисы, но места работают. когда я удаляю места, карта работает..
@comeonalready places:1.1.0
даже подтягивается play-services-base:16.1.0
(обновлять нечего) ...но нужно еще применить плагин и добавить google_services.json
в проект.
для применения плагина google-services нужен google_services.json, но я не использую firebase. я просто не могу сделать это с этими инструкциями. ни один из способов не работает для меня.
я знаю, что ты прав. вы решаете проблему, но я не знаю, что не так, теперь она просто не работает :). я принимаю ваш ответ, потому что это информация, в которой нуждается вопрос. извините, если что-то не так :)
@comeonalready Я думаю, вам все равно нужно настроить проект на Firebase, чтобы получить google_services.json
... откуда вы можете извлечь эти два значения. без добавления google_app_id
он не может получить доступ к places
.
Не могли бы вы добавить все
dependencies
изbuild.gradle
?