如何解决Android Mapbox SDK加载样式失败:“ HTTP状态码404”
在SO和github中找不到此问题的答案。
当我尝试使用从Mapbox Studio获得的URI加载样式时,在loading style failed: "HTTP status code 404
侦听器中得到onDidFailLoadingMap
。
我已经仔细检查了代码中的URI和令牌,并且在IOS中一切正常。
该代码类似于Mapbox示例https://docs.mapbox.com/android/maps/examples/use-a-mapbox-studio-style/
中的代码如果我放置他们的样式URI之一,它也可以正常工作。
Mapbox.getInstance(this,getResources().getString(R.string.my_studio_token));
mapView.onCreate(savedInstanceState);
mapView.addOnDidFailLoadingMapListener(new MapView.OnDidFailLoadingMapListener() {
@Override
public void onDidFailLoadingMap(String errorMessage) {
Log.i("style_load",errorMessage); //gets here after failure
}
});
mapView.getMapAsync(mapboxMap -> {
mapboxMap.setStyle(new Style.Builder().fromUri(getResources().getString(R.string.travily_style_uri)),style -> Log.i("style_load",style.toString()));
结果是我得到一个没有地图的空白屏幕。
如果需要,我很高兴添加任何代码段。
谢谢:)
解决方法
经过数小时的调试,我终于弄清楚了问题出在哪里。
我的应用程序文件中有Mapbox.getInstance
(在第一个活动之前启动),以某种方式使活动文件中的后一个Mapbox.getInstance
不相关。
一旦我在第一个Mapbox.getInstance
中更改了令牌,便可以使用。
它可能在mapbox示例中适用于uri的原因是因为这些uri是公共的,不需要特定的令牌。
希望它可以帮助遇到相同问题的人。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。