使用附近搜索功能探索本地信息

在本文档中,您将了解如何使用 附近搜索 (New) API 构建简单且经济实惠的

本地探索体验。

本地探索体验会在用户搜索酒店或房地产时,向用户显示指定位置附近的主要景点。它通常由一个互动式地图组成,其中包含一个额外的面板,面板中包含一个地点选择器和一个照片库。您将了解不同的 Google Maps Platform 产品和功能,以便通过互动性提升体验。

示例本地发现

使用场景

现在,我们来了解一下本地发现集成中的哪些元素可以提升用户价值:

  • 探索 - 通过显示各种类型的相关地点,让用户大致了解单个地点周围的情况。

  • 互动性 - 允许用户选择地点并动态刷新数据

    相对位置。

  • 可视化 - 提供地点评价、照片

    以及步行时间和距离,以便用户快速了解是否符合其需求。

参考架构

alt_text

本地发现

您可以通过多种方式打造本地探索体验。以下集成是一个自定义示例,展示了如何利用广为人知的 Google Maps Platform API 以及一些令人兴奋的新功能来打造用户体验。如果您希望采用模板化方法进行本地发现,可以使用 Web 组件。

示例应用

示例演示

在下表中,您会看到示例应用被拆分为多个步骤,并附有使用 Google Maps Platform API 进行技术实现的说明。

1. 使用自动补全功能搜索地点

  • 加载 Maps JavaScript API。
  • 地点自动补全查询或在地图上选择地点。

自动补全示例

2. 使用附近搜索(新)API 呈现本地地图注点

  • 热门程度排名(相关性较高的结果)或距离排名。
  • includedTypes、excludedTypes;如果您是酒店,则可以排除“lodging”类型,仅包含合适的类型,例如:“restaurant、cafe、park、tourist_attraction”。
  • 利用includedPrimaryTypes、excludedPrimaryTypes,进一步掌控结果。
  • `locationRestriction,以避免结果数量不足或地点太远;如果结果为零,请在显示结果之前扩大圆形 / 矩形的大小。

附近的地点示例

预订酒店时请求数据字段的查询示例:

  • 基本(displayName、types、openingHours、formattedAddress)
  • 联系人(websiteUri、nationalPhoneNumber、internationalPhoneNumber)
  • 首选(reviews、priceLevel、userRatingCount)
 { "includedTypes": ["restaurant","cafe","park"], "excludedTypes":
["lodging","convenience_store"], "includedPrimaryTypes":
["restaurant","tourist_attraction","airport"], "excludedPrimaryTypes":
["lodging"], "maxResultCount": 20, "locationRestriction": { "circle": {
"center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } } }

搜索房地产并请求数据字段时的查询示例:

  • 基本(displayName、types、openingHours、formattedAddress)
 { "includedTypes": ["school","transport","bus","convenience_store"],
"excludedTypes": ["lodging"], "includedPrimaryTypes":
["restaurant","tourist_attraction","airport"], "excludedPrimaryTypes":
["lodging"], "maxResultCount": 20, "locationRestriction": { "circle": {
"center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } } }

3. 通过 Dynamic Maps 和 Directions API 增加互动性

  • 通过查询 Directions API,获取最新的路段和路段步骤。 * 在下一部分中使用时间。

示例路线

4. 在互动时显示地点的详细信息

  1. 说明:displayName、types、rating、userRatingCount、priceLevel。

    时间:来自之前的 Directions API 查询。

  2. 评价:reviews[i].author、reviews[i].rating、reviews[i].text。

  3. 图片:在附近搜索(新版)API 的无限制预览期间,您必须使用 place.id 查询地点详情,以获取 photo_reference,然后在您的体验中一次查询一个

地点详情

查询次数和相关费用

总结

本地探索体验是提供用户价值的有效方式。此演示实现具有许多功能,您在 Google Maps Platform 上利用 附近搜索 (New) API 的特殊功能打造此类体验时,可能需要包含这些功能。

后续步骤

建议的补充阅读材料:

贡献者

主要作者:

Thomas Anglaret | Google Maps Platform 解决方案工程师