找不到 com.mapbox.mapboxsdk:mapbox-android-accounts:0.7.0。全新安装 MapBox

Sto*_*ace 4 android mapbox react-native mapbox-gl-js

我建立了一个新的 React-Native 项目,并添加了 Mapbox 和yarn add @react-native-mapbox-gl/maps.

请注意,如果您使用默认的 Mapbox Android SDK(包含在此库中)并且使用较新的 Android 操作系统版本 (API 30+),您将遇到致命异常:java.lang.SecurityException: getDataNetworkTypeForSubscriber。

据我了解,不适用,因为我的目标是Android上的API 29。另外,这不是我收到的错误。

我添加了提供的演示代码

import React, { Component } from 'react';
import { StyleSheet, View } from 'react-native';
import MapboxGL from '@react-native-mapbox-gl/maps';

MapboxGL.setAccessToken('<YOUR_ACCESSTOKEN>');

const styles = StyleSheet.create({
  page: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#F5FCFF'
  },
  container: {
    height: 300,
    width: 300,
    backgroundColor: 'tomato'
  },
  map: {
    flex: 1
  }
});

export default class App extends Component {
  render() {
    return (
      <View style={styles.page}>
        <View style={styles.container}>
          <MapboxGL.MapView style={styles.map} />
        </View>
      </View>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

并在 Android 上启动该应用程序。我收到以下错误:

找不到 com.mapbox.mapboxsdk:mapbox-android-accounts:0.7.0。需要:project :react-native-mapbox-gl_maps > com.mapbox.mapboxsdk:mapbox-android-sdk:9.1.0 在build.gradle文件中搜索

这是app/android/build.gradle

buildscript {
    ext {
        buildToolsVersion = "30.0.2"
        minSdkVersion = 21
        compileSdkVersion = 29
        targetSdkVersion = 29
        ndkVersion = "20.1.5948944"
    }
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath("com.android.tools.build:gradle:4.2.1")
    }
}

allprojects {
    repositories {
        mavenCentral()
        mavenLocal()
        maven {
            url("$rootDir/../node_modules/react-native/android")
        }
        maven {
            url("$rootDir/../node_modules/jsc-android/dist")
        }

        google()
        maven { url 'https://www.jitpack.io' }
    }
}

Run Code Online (Sandbox Code Playgroud)

失败:构建已完成,但有 8 次失败。

1:任务因异常而失败。

  • 出了什么问题:任务“:app:mergeDebugAssets”执行失败。

无法解析配置“:app:debugRuntimeClasspath”的所有文件。找不到 com.mapbox.mapboxsdk:mapbox-android-accounts:0.7.0。在以下位置搜索: - https://repo.maven.apache.org/maven2/com/mapbox/mapboxsdk/mapbox-android-accounts/0.7.0/mapbox-android-accounts-0.7.0.pom - 文件:/Users/macosx/.m2/repository/com/mapbox/mapboxsdk/mapbox-android-accounts/0.7.0/mapbox-android-accounts-0.7.0.pom - 文件:/Users/macosx/Documents/mapstar-当前/MapStar/node_modules/react-native/android/com/mapbox/mapboxsdk/mapbox-android-accounts/0.7.0/mapbox-android-accounts-0.7.0.pom - 文件:/Users/macosx/Documents/mapstar -current/MapStar/node_modules/jsc-android/dist/com/mapbox/mapboxsdk/mapbox-android-accounts/0.7.0/mapbox-android-accounts-0.7.0.pom - https://dl.google.com /dl/android/maven2/com/mapbox/mapboxsdk/mapbox-android-accounts/0.7.0/mapbox-android-accounts-0.7.0.pom - https://www.jitpack.io/com/mapbox/mapboxsdk /mapbox-android-accounts/0.7.0/mapbox-android-accounts-0.7.0.pom 必需:项目 :app > 项目 :react-native-mapbox-gl_maps > com.mapbox.mapboxsdk:mapbox-android-sdk :9.1.0

  • 尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。使用 --scan 运行以获得完整的见解。=================================================== ===========================

当我单击提供的链接 https://repo.maven.apache.org/maven2/com/mapbox/mapboxsdk/mapbox-android-accounts/0.7.0/mapbox-android-accounts-0.7.0.pom

我得到一个 404...

404

Sto*_*ace 5

我不确定为什么(也许是因为react-native-mapbox-gl正在更新),需要添加到您的代码中:

将以下内容添加到您的android/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'] ?: ""
        }
    }
Run Code Online (Sandbox Code Playgroud)

从这里得到这个提示https://github.com/react-native-mapbox-gl/maps/issues/1501#issuecomment-906158991