首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android如何使用osmdroid和mbtiles显示脱机地图

Android如何使用osmdroid和mbtiles显示脱机地图
EN

Stack Overflow用户
提问于 2018-07-20 08:21:57
回答 2查看 1.2K关注 0票数 0

我们正在开发一个android应用程序,它需要显示一个特定位置的离线地图(比如3-7个相邻岛屿)。我们成功地展示了整个世界,但那太沉重了。当手机离线时,地图有有限的缩放(变得模糊,开始滞后)。

我设想这个应用程序就像Maps.me,如果你离线的话,你可以连续放大下载的地图。我一直在试着在https://github.com/osmdroid/osmdroid/wiki/Offline-Map-Tiles上转来转去,过了两天半,我就可以用Maperitive获得mbtiles了。但从那以后,我对下一步是什么感到困惑。在github教程中,我被困在这里:https://github.com/osmdroid/osmdroid/wiki/Offline-Map-Tiles#using-offline-tile-archives是否意味着我必须手动将mbtiles放到路径上,或者有一种方法可以自动存储和使用mbtiles (或者通过代码)?

几周前,我刚开始了解osm和android工作室,我需要帮助。糟糕透顶。谁来指点我。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-21 01:12:40

  • 您可以在您的应用程序的用户可以下载的服务器上托管这些瓷砖档案
  • 您可以使用CacheManager实用程序使用户能够在脱机之前缓存和/或永久存档给定区域的块。
  • 正如@Josef所提到的,如果瓷砖的数量很小,您可以直接将它们放在/assets/YourTileSourceHere中。然后告诉osmdroid使用匹配该名称的映射块源。
  • 如果瓷砖档案很小,也可以放在raw中,然后在安装时将其复制到osmdroid可以读取的地方,例如/data/data/yourpackagename (这也称为app私有存储或复制到/sdcard/osmdroid或任何您想要的地方,只需使用Configuration.getInstance().set.方法配置其路径。

如果您有改进wiki的建议,请告诉我。

票数 3
EN

Stack Overflow用户

发布于 2018-07-20 08:34:06

是的,你必须把mbtiles文件放到你的手机上,并在你的应用程序代码中指定正确的路径。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51438157

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档