2013-02-19 94 views
0

我正在做一个应用程序,需要从用户当前位置显示最近的超市。谷歌地图API,检索最近的地方

我看过类似的问题,这个问题和答案差异很大。目前,我可以在特定位置显示地图,并在其上方有一个标记。

找到并显示最近的超市的最佳方式是什么?

我读过反向地理编码的位置可以给出地址。但是,看到超市附近所有地址的最佳方法是什么?我可以使用HTTP连接到从我的位置在给定半径内搜索的数据库,然后使用某种叠加显示它们?

我已经阅读了大量的教程,但大多数只显示了显示地图的非常基础......放置当前位置的标记.......然后获得纬度/经度位置。

如果有人知道任何教程来显示我想要做的事情,那将是非常棒的!

回答

3

Google Places有一个适合您需求的RESTful API。从本质上讲,你只需传递你的多头头寸,一个对应于你想要找到的东西(健身房,餐厅等等)和你想搜索的半径。

您必须注册一个api密钥,但它非常容易。这里是文档:https://developers.google.com/places/documentation/

0

你有超市自己的数据库吗?如果是这样,并且它们在插入时被经纬度编码为纬度/长度,那么将它们设置为半径范围内的数学应该是微不足道的,并且使用设置标记的基本示例。

如果你没有自己的数据库,你首先需要从一些web服务中提取兴趣点,并服从它可能存在的问题。

+0

不,我没有自己的数据库。我想按照您的说法使用Web服务。你能推荐一个吗? – user1352057 2013-02-19 16:33:33

+0

你可能会感兴趣的Foursquare场地平台 https://developer.foursquare.com/overview/venues – hexblot 2013-02-19 16:44:46

0

你应该拥有某种超市的数据库。如果你不能,你可以例如使用Google Geocoding APIFoursquare APIsomething else。这些记录可以存储在HashMapSQlite数据库中。

通过这些位置并计算从超市到用户位置的距离(这可以通过lat/long distance完成)。这可以从客户端或服务器端完成(假设你有自己的服务器)。在您到达所有超市的距离后,只需选择距离最近的n并将其显示在地图上。