![](/img/trans.png)
[英]Find the location nearest to current location from an array of locations using Google Maps Places API
[英]Google Maps API, retrieving nearest places
我正在制作一個需要從用戶當前位置顯示最近的超市的應用程序。
我已經看到與此問題類似的問題,答案差異很大。 目前,我可以在特定位置顯示地圖,並在其上方標記。
查找和顯示最近的超市的最佳方法是什么?
我已經讀過,對位置進行反向地理編碼可以給出地址。 但是,查看超市附近所有地址的最佳方法是什么? 我可以使用HTTP連接到一個數據庫,該數據庫在我的位置給定半徑范圍內進行搜索,然后使用某種疊加層進行顯示嗎?
我已經閱讀了許多教程,但是大多數教程只顯示了顯示地圖的基礎知識……放置當前位置的標記……然后獲取經緯度位置。
如果有人知道任何教程來展示我想在上面做些什么,那就太好了!
Google Places有一個RESTful API,可以滿足您的需求。 本質上,您只需傳遞緯度和經度位置即可,該位置與您要查找的內容(健身房,餐廳等)和您要搜索的半徑相對應。
您確實需要注冊一個api密鑰,但這確實很容易。 這是文檔: https : //developers.google.com/places/documentation/
您有自己的超市數據庫嗎? 如果是這樣,並且在插入時將它們地理編碼為經/緯度,則要使它們在設定的半徑范圍內是簡單的數學運算,並使用基本示例進行設置標記。
如果您沒有自己的數據庫,則首先需要從某些Web服務中提取POI,然后受其可能存在的怪癖的影響。
您應該具有所有超市的某種數據庫。 如果您不這樣做,例如可以使用Google Geocoding API , Foursquare API或其他方式 。 這些記錄可以存儲在HashMap
或SQlite
數據庫中。
遍歷這些位置並計算從超市到您的用戶位置的距離(這可以通過經緯度完成)。 可以從客戶端或服務器端完成此操作(假設您擁有自己的服務器)。 得到所有超市的距離后,只需選擇最近的n
並將其顯示在地圖上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.