在移动混合应用程序中离线显示地图的可能方法


9

我想开发一个可在Android和iPhone设备上运行的移动混合应用程序,并希望在其中显示自己的地图数据。我有需要数据的SHP文件。我有Geoserver和PostGIS,可以在线加载和提供地图数据。到目前为止,一切都很好。

我的问题是我仍然没有找出脱机显示地图数据的正确方法。尽管我在本网站上已阅读了许多答案,但似乎都没有解决(根据我对我问题的理解)。

目的是在地图上显示交叉点。离线。某些间隔点没有地址。我想满足这些要求:

  1. 如何离线提供地图数据和内容给用户设备
  2. 如何提供用户路由选项以将其从当前位置导航到目的地
  3. 如何在应用程序内部从WordPress CMS添加内容数据?(通过JSON?GeoJSON?GeoRSS?)

一直在寻找和寻找许多Tile服务和许多方法来达到要求,但是仍然没有找到正确的组合。

对于应用程序的开发,我一直在使用PhoneGap XDK,Eclipse ADT。为了在移动设备上显示地图,我使用的是OpenLayers mobile。

期待您的建议或演练。

提前谢谢你

Answers:


3

考虑到您不愿意使用ESRI解决方案(使用他们的移动API),我建议使用Leafleft,因为可以在Phonegap中使用它。

看看这篇文章(带有示例代码和有价值的注释):http : //geospatialscott.blogspot.com.br/2012/04/phonegap-leaflet-tilemill-offline.html

快速解答您的问题:

  • 如何离线提供地图数据和内容给用户设备

    • 使用移动友好/兼容格式(例如sqlite或json)保留数据以进行脱机访问(如果不使用现有的COTS解决方案,则应编写自定义导出/导入应用)
    • 使用客户端渲染解决方案(例如Leafleft(不要忘记其插件),甚至D3
  • 如何提供用户路由选项以将其从当前位置导航到目的地

    • 难得多。我不知道任何基于Json和Javascript的离线路由库,也许您必须实现自己的引擎-考虑到性能和优化不是一件容易的事(像ESRI这样的COTS解决方案确实支持它)。
    • 实际上,大多数解决方案都往返于服务器,并将处理后的路由引入设备。如果不需要绝对断开的路由功能,这是最简单的路径。
  • 如何在应用程序内部从WordPress CMS添加内容数据?
    • 我不确定这是什么意思。RSS,JSON和简单的HTML缓存是可能的方法。

免责声明:我不是ESRI员工,但我确实使用ESRI解决方案,这就是为什么我使用它为您提供选择的原因。当然,您可以考虑针对这种情况的其他商业解决方案。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.