Проблемы с добавлением MapBox в ваш проект Android Studio

#android #android-studio #gradle #mapbox #mapbox-android

Вопрос:

Я новичок в MapBox, пытаясь создать простое приложение для Android, следуя инструкциям на сайте MapBox. Не знаю почему, но у меня постоянные ошибки, кажется, что инструкции устарели. Во — первых, в build.gradle нет «всех проектов», и когда я добавляю его-я получаю следующую ошибку:

»’

 Build file 'C:UsersgormDesktop12345MyApplication2build.gradle' line: 35

A problem occurred evaluating root project 'My Application'.
> Build was configured to prefer settings repositories over project repositories but repository 'maven' was added by build file 'build.gradle'

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.GradleScriptException: A problem occurred evaluating root project 'My Application'.
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:93)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.lambda$apply$0(DefaultScriptPluginFactory.java:133)
    at org.gradle.configuration.ProjectScriptTarget.addConfiguration(ProjectScriptTarget.java:77)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:136)
    at org.gradle.configuration.BuildOperationScriptPlugin$1.run(BuildOperationScriptPlugin.java:65)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
    at......
 

»’

Итак, я написал свой файл build.gradle следующим образом:

»’

 buildscript {
    repositories {
        google()
        mavenCentral()
        jcenter()
        
        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'] ?: ""
            }
       }

        //noinspection JcenterRepositoryObsolete
    }
    dependencies {
        classpath "com.android.tools.build:gradle:7.0.2"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
task clean(type: Delete) {
    delete rootProject.buildDir
}
 

»’
I’m getting an error now :

«Could not GET ‘https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/mapboxsdk/mapbox-android-sdk-services/5.0.0/mapbox-android-sdk-services-5.0.0.pom’. Received status code 401 from server: Unauthorized
Disable Gradle ‘offline mode’ and sync project»

I’m tired of looking for a solution. Can anyone help?

P.S. To top it all, I had to add maven {url ‘https://api.mapbox.com/downloads/v2/releases/maven’} to Setting.gradle and it looks like this:

»’

 dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        jcenter() // Warning: this repository is going to shut down soon
        maven {
            url 'https://api.mapbox.com/downloads/v2/releases/maven'}

    }
}

rootProject.name = "My Application"
include ':app'
 

»’