首页 > 解决方案 > 我想将 GeoJson 添加到 mapbox mapsnapshot

问题描述

我一直在尝试找到一种有效的方法来显示 mapbox 地图的多个视图,并且我已经登陆了 mapbox 快照程序。但是,在尝试将geojson 坐标字符串添加到快照时,我运气不佳。

我使用了以下代码:

 int width  = myContext.getResources().getDisplayMetrics().widthPixels;
 int height = (int) convertDpToPixel(200f, myContext);

 MapSnapshotter.Options snapShopOptions = new MapSnapshotter.Options(width, height);

 LatLngBounds bounds = new LatLngBounds.Builder()
                .include(post.getPath().get(0))
                .include(post.getPath().get(post.getPath().size() - 1))
                .build();

 snapShopOptions.withRegion(bounds);

 snapShopOptions.withStyle(myContext.getString(R.string.outdoor_style));

 mapSnapshotter = new MapSnapshotter(myContext, snapShopOptions);

 mapSnapshotter.setStyleJson(String.valueOf(new Style.Builder()
               .fromUri("mapbox://styles/mapbox/outdoors-v11")));

 mapSnapshotter.start(new MapSnapshotter.SnapshotReadyCallback() {
            @Override
            public void onSnapshotReady(MapSnapshot snapshot) {
                Bitmap bitmapImage = snapshot.getBitmap();
                Glide.with(myContext).load(bitmapImage).into(holder.mapSnapShot);
            }
        }); 

我尝试初始化 MapboxMap 对象并将 geojson 添加到该功能,然后使用 .getProjection(),但它仍然没有显示路线。

谁能帮我解决这个问题??

标签: javaandroidmobilemapbox

解决方案


我最终联系了 Mapbox 支持,目前该功能不受支持。他们的确切报价是"Mapbox's MapSnapshotter does not support your use case, but it will once runtime styling is supported by the snapshotter."

支持然后将我指向这篇文章Android Convert current screen to bitmap

希望如果有人和我一样挣扎,这将有助于节省一些时间!


推荐阅读