Google地图自动完成功能-没有返回街道号码?

4

我希望在我的iOS应用程序中构建一个相当基础的地址搜索功能。我使用Google Places Autocomplete根据用户输入查询结果,如下:

https://maps.googleapis.com/maps/api/place/autocomplete/json?input=shoppers@&radius=160934&location=50.445210,-104.618896&components=country:ca&key=xxxxxxxxxxxxx

我得到的结果太模糊,无法实际应用。以下是一个示例,在这个示例中,我只获得了企业名称和街道名称。问题在于,这家企业在同一条街上有三个不同的位置,所以如果没有提供街道号码,用户该如何确定他们选择的是哪一个位置呢?
{
         "description" : "Shoppers Drug Mart, Albert Street, Regina, SK, Canada",
         "id" : "94065830c922a4239ece26102fb3439fa2f2e155",
         "matched_substrings" : [
            {
               "length" : 8,
               "offset" : 0
            }
         ],
         "place_id" : "ChIJ4XzAGbCgHlMRGSFBsEbyfCE",
         "reference" : "ChIJ4XzAGbCgHlMRGSFBsEbyfCE",
         "structured_formatting" : {
            "main_text" : "Shoppers Drug Mart",
            "main_text_matched_substrings" : [
               {
                  "length" : 8,
                  "offset" : 0
               }
            ],
            "secondary_text" : "Albert Street, Regina, SK, Canada"
         },
         "terms" : [
            {
               "offset" : 0,
               "value" : "Shoppers Drug Mart"
            },
            {
               "offset" : 20,
               "value" : "Albert Street"
            },
            {
               "offset" : 35,
               "value" : "Regina"
            },
            {
               "offset" : 43,
               "value" : "SK"
            },
            {
               "offset" : 47,
               "value" : "Canada"
            }
         ],
         "types" : [ "pharmacy", "health", "point_of_interest", "store", "establishment" ]
      },

如果您已经拥有完整或部分完整的搜索词,为什么不立即进行地点搜索呢?使用输入“购物者”应该可以进行附近搜索或文本搜索。 - MrUpsidown
1个回答

5
Places Autocomplete旨在返回基于您的输入的预测,而不是详细地址信息。您需要使用返回的Place ID并使用它进行Place Details请求,以获取包括地址信息等在内的响应。
使用自动完成请求的第一个结果,可以形成如下所示的Place Details请求: https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJ4XzAGbCgHlMRGSFBsEbyfCE&key=YOUR_API_KEY 这将提供您所需的信息。
有关更多信息,请参见以下链接: https://developers.google.com/places/web-service/autocomplete#place_autocomplete_results https://developers.google.com/places/web-service/place-id#example-using-the-places-api

1
好的 - 这似乎非常低效,我希望有更好的方法。谢谢。 - Adam G

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接