选择您的 API 版本

Places API 支持两个 API 版本:Places API 是现有的 API,而 Places API(新)是 API 的下一代版本。

发布 Places API(新)后,您的第一项任务是决定使用哪组 API。如果您是新客户或已在使用这些 API 的现有客户,情况就如此。您可以通过本指南了解这两个 API 之间的主要区别。

API 列表

下表列出了这两组 API。如果您是现有客户,请使用此表来确定用于替换您当前使用的 API 的新 API。

Places API Places API(新) 备注
查找地点 文本搜索(新) 没有新版本的“查找地点”。 文本搜索(新)已将其取代。
附近搜索 附近搜索(新) 所有使用现有 API 且包含文本查询的请求都应使用文本搜索(新),因为附近搜索(新)不支持文本输入。
文本搜索 文本搜索(新)
地点详情 地点详情(新)
地点照片 地点照片(新)
地点自动填充 自动补全(新)
查询自动补全 自动补全(新) 自动补全功能中添加了一些功能(新增)

您在 API 密钥上启用的 Places API 服务版本可控制您的应用使用的 API:

  • Places API:启用现有的 API。如果仅为与您应用的 API 密钥关联的项目启用了 Places API,您的应用将无法访问新的 API。

  • Places API(新):启用添加到 Places SDK for iOS 的主要功能(新)中所述的所有新 API 和功能。您的应用将无法访问现有 API。

  • 两者:启用 Places SDK for iOS(新)Places SDK for iOS 的所有功能和 API。

如需详细了解如何选择 Places API 服务,请参阅设置您的 Google Cloud 项目

迁移到新 API

如果您使用的是现有 API 并希望迁移到新 API,请参阅每个 API 的以下迁移指南:

向 Places API 添加的主要功能(新)

本部分介绍了 Places API(新)中添加的主要功能。

在 Google Cloud 标准平台上实现

Places API(新)在 Google Cloud 上的服务基础架构上实现。此实现提供了一个更安全、更可信的平台,并具有 OAuth 等增强的安全选项。这种标准 API 设计使 API 之间保持了一定程度的一致性,提高了 Places API(新)的开发效率。

性能改进

Places API(新)提升了性能,因此很有必要取代使用现有 Places API 的应用。

简化的价格方案

Places API(新)简化了定价流程,因此您只需为实际使用的数据付费。使用字段掩码实现简化的价格。

对于“地点详情(新)”“附近搜索(新)”和“文本搜索(新)”,您可以使用字段掩码来控制要在响应中返回的字段列表。然后,您只需为所请求的数据付费。使用字段遮盖是一种很好的设计做法,可确保您不会请求不必要的数据,这有助于避免不必要的处理时间和结算费用。

地点的一致响应数据

使用现有的 API 时,地点详情 API、附近搜索 API 和文本搜索 API 会针对地点返回不同的响应数据。Places API(新)会对响应进行标准化,以便这些 API 针对地点返回相同的数据。

展开的地点类型

现在,API 响应可包含地点的主要类型。每个地点都可以有一个指定为地点主要类型的类型值,如表 A 中所列。

此外,新 API 还会添加下表所示的地点类型。您可以在使用“附近搜索(新)”和“文本搜索(新)”进行搜索时,使用这些新类型和现有类型。新类型均包含在表 A 中。

类型
american_restaurant discount_store ice_cream_shop sandwich_shop
amusement_center dog_park indian_restaurant school_district
athletic_field electric_vehicle_charging_station indonesian_restaurant seafood_restaurant
auto_parts_store event_venue italian_restaurant ski_resort
banquet_hall extended_stay_hotel japanese_restaurant spanish_restaurant
barbecue_restaurant 农场 korean_restaurant sporting_goods_store
barber_shop Farmstay lebanese_restaurant sports_club
bed_and_breakfast fast_food_restaurant Marina sports_complex
brazilian_restaurant ferry_terminal 市场 steak_house
breakfast_restaurant fitness_center medical_lab sushi_restaurant
brunch_restaurant french_restaurant mediterranean_restaurant swimming_pool
bus_stop gift_shop mexican_restaurant 裁缝
camping_cabin golf_course middle_eastern_restaurant telecommunications_service_provider
cell_phone_store greek_restaurant 汽车旅店 thai_restaurant
child_care_agency grocery_store national_park transit_depot
chinese_restaurant guest_house park_and_ride truck_stop
coffee_shop hair_salon performing_arts_theater turkish_restaurant
community_center hamburger_restaurant pizza_restaurant vegan_restaurant
顾问 直升飞机场 playground vegetarian_restaurant
convention_center hiking_area 学龄前儿童 vietnamese_restaurant
村舍 historical_landmark private_guest_room visitor_center
courier_service home_improvement_store ramen_restaurant wedding_venue
cultural_center 招待所 resort_hotel 批发商
dental_clinic hotel rest_stop

除了这些新类型之外,Places API(新)还将以下类型从 Places API 的表 2 移到了 Places API(新)的表 A 中。这意味着,您现在可以将这些类型作为搜索的一部分:

  • country
  • administrative_area_level_1
  • administrative_area_level_2
  • postal_code
  • locality

动态地点数据

Places API(新)支持动态响应数据,例如电动车辆充电站的可用性或加油站的最新燃料价格。您可以使用这些响应字段来打造动态的用户体验。

您应选择哪个 API?

在开始应用开发之前,您必须选择 API:

  1. 如果您是刚开始使用 Places API 的新客户,请从新 API 入手。

  2. 如果您是新客户,并且现有 API(例如地点自动补全或查询自动补全)还没有替代 API,您可以组合使用新 API 和现有 API。

  3. 如果您是现有客户,可以继续使用现有 API。不过,为了充分利用 Places API(新)的性能改进和功能增强功能,您可以迁移到新 API。

    如需详细了解迁移,请参阅迁移概览