#android #annotations #mapbox
#Android #аннотации #mapbox
Вопрос:
Я добавил mapbox и его зависимость от аннотации, как показано ниже:
implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.0'
api 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0'
все работало хорошо, но поскольку я изменил версию mapbox с 9.2.0 на 9.6.0, при запуске моего приложения возникла эта ошибка.
Внимание: сборка выполнена успешно, но приложение работает некорректно. Также эта ошибка возникает с версиями 9.4.0 и 9.5.0.
Ошибка:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
> Could not find com.mapbox.mapboxsdk:mapbox-android-sdk:9.6.0.
Searched in the following locations:
- https://jcenter.bintray.com/com/mapbox/mapboxsdk/mapbox-android-sdk/9.6.0/mapbox-android-sdk-9.6.0.pom
- https://dl.google.com/dl/android/maven2/com/mapbox/mapboxsdk/mapbox-android-sdk/9.6.0/mapbox-android-sdk-9.6.0.pom
- https://maven.google.com/com/mapbox/mapboxsdk/mapbox-android-sdk/9.6.0/mapbox-android-sdk-9.6.0.pom
- https://repo.maven.apache.org/maven2/com/mapbox/mapboxsdk/mapbox-android-sdk/9.6.0/mapbox-android-sdk-9.6.0.pom
Required by:
project :app > project :mapir-android-sdk
> Could not find com.mapbox.mapboxsdk:mapbox-android-sdk:9.6.0.
Searched in the following locations:
- https://jcenter.bintray.com/com/mapbox/mapboxsdk/mapbox-android-sdk/9.6.0/mapbox-android-sdk-9.6.0.pom
- https://dl.google.com/dl/android/maven2/com/mapbox/mapboxsdk/mapbox-android-sdk/9.6.0/mapbox-android-sdk-9.6.0.pom
- https://maven.google.com/com/mapbox/mapboxsdk/mapbox-android-sdk/9.6.0/mapbox-android-sdk-9.6.0.pom
- https://repo.maven.apache.org/maven2/com/mapbox/mapboxsdk/mapbox-android-sdk/9.6.0/mapbox-android-sdk-9.6.0.pom
Required by:
project :app > project :mapir-android-sdk > com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0
Possible solution:
- Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html
Ответ №1:
Начиная с Mapbox Maps SDK для Android версии 9.4, изменился способ доступа к репозиторию Maven для загрузки библиотек SDK.
Теперь вам нужно создать секретный токен доступа и использовать его для доступа к репозиторию maven, где расположены библиотеки. Ваш модуль уровня build.gradle должен содержать это:
allprojects {
repositories {
maven {
url 'https://api.mapbox.com/downloads/v2/releases/maven'
authentication {
basic(BasicAuthentication)
}
credentials {
// Do not change the username below.
// This should always be `mapbox` (not your username).
username = 'mapbox'
// Use the secret token you stored in gradle.properties as the password
password = project.properties['MAPBOX_DOWNLOADS_TOKEN'] ?: ""
}
}
}
}
Пожалуйста, также смотрите:
https://docs.mapbox.com/android/maps/overview/#configure-credentials
Комментарии:
1. Я сделал то, что вы сказали, но моя ошибка заключалась в том, что я ввел учетные данные в: app gradle file, потому что я не хочу заставлять пользователя создавать учетную запись mapbox, на самом деле я использую mapbox в своем пользовательском пакете. Спасибо за ответ.
2. @mortezahosseini у меня была такая же проблема, какое-либо решение по этой теме?