我在Android Studio中尝试使用mapbox时遇到了这个问题
未能解决:Map框软件开发包:Map框-安卓系统软件开发包:9.5.0
有什么问题?
我的build.gradle依赖项
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.5.0'
}
我的build.gradle项目
buildscript {
repositories {
google()
mavenCentral()
jcenter()
}
dependencies {
classpath "com.android.tools.build:gradle:4.0.1"
}
}
allprojects {
repositories {
google()
jcenter()
maven { url 'https://mapbox.bintray.com/mapbox' }
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
9条答案
按热度按时间vs91vp4v1#
这只是解释得不好。你必须制作一个私有令牌。公共令牌不起作用。当你创建一个令牌时,有一个字段“读取:下载”只需标记它并生成你的令牌。这个令牌应该起作用。
fdx2calv2#
版本9.5.0(和9.6.0)也已存在(请参见此处的发行说明:https://github.com/mapbox/mapbox-gl-native-android/blob/main/CHANGELOG.md)。只是访问Maven存储库的方式随着Mapbox Maps SDK〉v9.4.0而改变了。
我不鼓励你使用像
mapbox-android-sdk:8.6.7
这样过时的版本,但是选择com.mapbox.mapboxsdk:mapbox-android-sdk:9.6.0
。访问mave存储库的新方法记录在这里:https://docs.mapbox.com/android/maps/overview/#configure-credentials
现在,您需要创建一个秘密访问令牌,并使用它来访问库所在的maven repo。您的模块级build.gradle应该包含以下内容:
ibps3vxo3#
只要使用这个安全的版本,它将在您的Gradle上工作。
fiei3ece4#
按照前面的回答生成私钥,并在maven central上找到实际版本,找到解决方案。在编写本文时,maven central存储库上没有9.7和10版本,使用此处找到的9.2版本
https://mvnrepository.com/artifact/com.mapbox.mapboxsdk/mapbox-android-sdk
编辑:能够通过更改设置使用9.7.0 mapbox。gradle条目
存储库模式.set(存储库模式.FAIL_ON_PROJECT_REPOS)
到
存储库模式设置(存储库模式首选项项目)
和build.gradle将mavenCentral()和google()添加到所有项目存储库
9w11ddsr5#
唯一的方法得到了我的项目最终工作是通过寻找一些指针在项目中附在这里:https://github.com/mapbox/mapbox-maps-android/issues/614#issue-988592394它使用com.mapbox.maps:android:10.0.0-rc.3,实际上在我的机器上工作。
为了让我自己的项目工作,我不得不更改设置。gradle从这个:
改为:
ovfsdjhp6#
Mapbox提供的默认令牌是我认为你正在使用的,你需要创建一个新的私有令牌并检查此权限
DOWNLOAD:READ
,然后它应该工作。我创建了一个新的令牌,并将其命名为
first
,在我的情况下,您可以称之为任何东西。bnl4lu3b7#
尝试一个版本如何,实际上是exists?
disbfnqx8#
您应该删除此行:
maven{ url 'https://mapbox.bintray.com/mapbox' }
ee7vknir9#
你可以在这里找到Mapbox GL for Android的文档:https://docs.mapbox.com/android/maps/guides/install/ .
正如mapbox_gl插件开发人员所说,这是社区驱动的,而不是官方的Mapbox产品。
所以,只做https://docs.mapbox.com/android/maps/guides/install/#configure-credentialsflutter android项目文档的www.example.com部分。
*创建访问密钥令牌,作用域为
Downloads:Read
。*在android/ www.example.com中将您的密钥令牌配置gradle.properties为
APBOX_DOWNLOADS_TOKEN=YOUR_SECRET_MAPBOX_ACCESS_TOKEN
*在app/source/main/AndroidManifest.xml中配置权限为:
*请注意在项目中
MapboxMap
小部件的accessToken
属性中提供相同的密钥。