如何在 Android 中显示自定义地图?

Posted

技术标签:

【中文标题】如何在 Android 中显示自定义地图?【英文标题】:How can I show a custom map in Android? 【发布时间】:2013-03-26 21:39:01 【问题描述】:

我是在 android 上使用地图的新手,作为自定义地图,我的意思是由我自己的地图服务器构建的地图(我正在使用带有 WMS 的 GeoServer)我应该创建自定义视图还是可以使用 MapFragment? 或者我可以使用的任何库? (我的自定义地图用于室内定位)

【问题讨论】:

你可以实现自己的TileProvider within google maps api v2 抱歉,请问我该怎么做呢?你有什么例子吗? 【参考方案1】:

您可以使用Osmdroid 显示您自己的地图图块。实现看起来像这样:

public void addTiledMaplayer()
        final MapTileProviderBasic tileProvider = new MapTileProviderBasic(getApplicationContext());
        final ITileSource tileSource = new XYTileSource(layerName, null, 15, 16, 256, ".png",
            "http://url.with/tiles/");
        tileProvider.setTileSource(tileSource);
        final TilesOverlay tilesOverlay = new TilesOverlay(tileProvider, this.getBaseContext());
        tilesOverlay.setLoadingBackgroundColor(Color.TRANSPARENT);
        map.getOverlays().add(tilesOverlay);
        map.invalidate();

    

如果您没有可用的切片,您可以使用名为 Mobile Atlas Creator 的程序从您的地理服务器中提取它们。

【讨论】:

以上是关于如何在 Android 中显示自定义地图?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Android 应用程序中使用自己的自定义图像而不是谷歌地图

谷歌地图如何在自定义地点显示我的位置标记?

为 Android 10 自定义 Google 地图控件

如何在模拟器上显示地图

如何将自定义图层添加到 Google 地图

为啥我的自定义 Google 地图图标在 PC 浏览器中显示,但在 Android 浏览器中不显示?