我已经通过直接下载将mapbox-sdk添加到现有的android项目中(https://docs.mapbox.com/android/maps/overview/#add-依赖性(
我在build.gradle文件中添加了dependency,如下所示。
implementation project(':mapbox-android-sdk-9.3.0')
在那之后,我用它修改了我的源代码,它被成功地编译了,但在运行时我得到了以下异常。
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.mapbox.android.telemetry.MapboxTelemetry" on path: DexPathList[[zip file "/data/app/com.xxxx.yyyy-LPdA94f71sQIsIW4AiNNZw==/base.apk"],nativeLibraryDirectories=[/data/app/com.xxxx.yyyy-LPdA94f71sQIsIW4AiNNZw==/lib/arm64, /system/lib64, /vendor/lib64, /product/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:93)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
错误是由线下引发的
Mapbox.getInstance(this.getActivity(), getString(R.string.mapbox_access_token));
感谢有人能帮助我解决这个问题,谢谢你的评论和反馈。
我认为,direct download
进程不工作,它询问了许多依赖项,在添加所有依赖项后,它询问libmapbox-gl.so
,所以这个进程不能正常工作。
所以我接着,通过maven repository
映射sdk添加,它的工作没有任何问题,我们只需要按照给定的步骤首先创建秘密令牌。请遵循Maven步骤(第一个选项卡(https://docs.mapbox.com/android/maps/overview/#add-依赖
用户名是什么,它的映射框是什么?
credentials {
username = 'mapbox'
// Use the secret token you stored in gradle.properties as the password
password = project.properties['MAPBOX_DOWNLOADS_TOKEN'] ?: ""
}