我正在尝试创建一个应用程序,允许用户查看托管在我自己的瓦片服务器上的OSM地图,并且还具有编辑功能。 目前,我有一个瓦片服务器,它将地图瓦片(png图像)传递给我的Android应用程序,并使用OSMDroid显示。 我还有一个PostGIS数据库,用于存储OSM数据。 我想做的是将OSMDroid mapview作为基础,使用户能够查看完整呈现的地图,然后让应用程序从PostGIS DB下载OSM数据,并将道路线路作为叠加层绘制在MapView的顶部,以便用户可以操纵这些线路,然后将其提交回数据库。它看起来类似于Vespucci的方式。 这种方法听起来好吗?另外,有人知道我如何将Android连接到PostGIS数据库并下载此数据吗? 谢谢。
直接让Android客户端连接到您的数据库并不是一个好主意。如您在评论中提到的那样,创建Web服务(如REST服务)是可行的方法。 采用这种方法有以下几个原因: 将数据库暴露在互联网上,从安全角度来看是不好的 将应用程序紧密耦合到数据库是设计角度的劣势。通过单独的服务层,您可以: 在无需更新应用程序的情况下更改数据层 添加缓存 根据需要在每一层增加容量