2013-02-19 93 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並將其顯示在地圖上。