选择您的 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 农庄 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(新)也从表 A 中的表 B 中移除了以下类型。这意味着,您现在可以在搜索中使用以下类型:
  • 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。

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