我们正在开发一个Android应用,该应用必须显示一个特定位置(例如3-7个相邻岛屿)的离线地图。我们成功地展示了整个世界,但这太重了。而且当手机离线时,地图的缩放比例会受到限制(变得模糊并且开始滞后)。
我设想该应用程序类似于Maps.me,其中,如果您处于离线状态,则可以连续放大下载的地图。一直试图绕过https://github.com/osmdroid/osmdroid/wiki/Offline-Map-Tiles,经过两天半的时间,我能够使用Maperitive来提高适应力。 但是从那里开始,我对下一步是什么感到困惑。在github教程中,我被困在这里:https://github.com/osmdroid/osmdroid/wiki/Offline-Map-Tiles#using-offline-tile-archives 这是否意味着我必须手动将mbtiles放置到路径上,还是有办法自动(或通过代码)存储和使用mbtiles?
几周前,我才刚刚开始了解osm和android studio,我需要帮助。不好有人请赐教。
答案 0 :(得分:3)
/assets/YourTileSourceHere
中。然后告诉osmdroid使用与该名称匹配的地图图块源raw
中,然后在安装时将其复制到osmdroid可以读取的位置,例如/data/data/yourpackagename
(也称为应用程序专用存储或复制到/ sdcard / osmdroid或任何您想要的地方,只需使用Configuration.getInstance()。set ....方法来为其配置路径。如果您有改进Wiki的建议,请告诉我
答案 1 :(得分:0)
是的,您必须将mbtiles文件放到手机上,并在应用程序代码中指定正确的路径。