0

我正在制作一个需要从用户当前位置显示最近的超市的应用程序。

我已经看到与此问题类似的问题,答案差异很大。目前,我能够在特定位置显示地图,上面有一个标记。

查找和展示最近的超市的最佳方式是什么?

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

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

如果有人知道任何教程来展示我想要在上面做什么,那就太好了!

4

3 回答 3

4

Google Places 有一个 RESTful API 可以满足您的需求。本质上,您只需输入您的经纬度位置、与您想要查找的内容(健身房、餐馆等)和您想要搜索的半径相对应的键。

您确实必须注册一个 api 密钥,但这真的很容易。这是文档:https ://developers.google.com/places/documentation/

于 2013-02-19T17:19:59.950 回答
0

您应该拥有所有超市的某种数据库。如果您不这样做,您可以例如使用Google Geocoding APIFoursquare API其他东西。这些记录既可以存储在数据库中,也可以存储HashMapSQlite数据库中。

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

于 2013-02-19T16:52:23.927 回答
0

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

如果你没有自己的数据库,你首先需要从一些 web 服务中提取 POI,并受制于它可能有的怪癖。

于 2013-02-19T16:25:40.493 回答