Android - 离线,非基于矢量的自定义地图

时间:2009-09-26 21:18:13

标签: android google-maps

对于我正在处理的应用程序,我需要显示自定义栅格图像切片(不是基于矢量,可能来自卫星图像),我需要离线执行此操作。我想使用MapView,但我看不到告诉它使用自定义的离线地图图块而不是从谷歌的服务器中提取数据的方法。

我已经看到了一些替代品,但似乎没有一个适合我的需要

MapDroyd似乎只支持基于矢量的地图。 mapdroyd.com /

OSMDroid似乎使用Open Street Maps;我没有看到任何文档说明你可以使用自定义地图图块。 code.google.com/p/osmdroid /

还有第三种选择,但我的帖子被吃了,我在历史上找不到它。

我是否必须咬紧牙关并“自己动手”?

5 个答案:

答案 0 :(得分:2)

我相信OpenLayers具有您需要的功能,但我不知道它是否在Android下运行。

请参阅this OpenLayers wiki page,了解如何使用自己的自定义图块。

答案 1 :(得分:1)

  

我是否必须咬紧牙关   和'滚动我自己'?

嗯,你觉得铅的味道怎么样? ; - )

说真的,谷歌地图是封闭源代码,我知道没有用于更改地图图块的API。如果有的话,我会感到震惊。

您可能会尝试与OSMDroid合作制作一个具有可插拔磁贴源的更通用的MapDroid。

我知道Android的唯一其他映射解决方案,除了您列出的映射解决方案之外,还是来自爱立信实验室的映射解决方案,它既是闭源又是向量,这可能会使它无用你。

答案 2 :(得分:1)

对于自定义移动地图解决方案您可以查看Nutiteq的maps lib

答案 3 :(得分:1)

我们最终使用Open Street Maps和自定义源来满足我们的需求。不幸的是,不能轻易切换瓷砖的来源,所以我们坚持使用基于矢量的瓷砖。结束编写一些代码以确保缓存切片在应用程序关闭时仍然存在,因此我们可以在没有连接的情况下访问它们。

答案 4 :(得分:1)

我知道这个问题已有一年半的历史了,但谷歌的搜索仍然很高......

... OsmDroid现在支持许多不同的地图图块源,如果你查看下面的文件,你可以看到支持的资源 - 从其他图块源和图块服务器使它工作不应该太难。

http://code.google.com/p/osmdroid/source/browse/trunk/osmdroid-android/src/org/osmdroid/tileprovider/tilesource/TileSourceFactory.java