选择 SDK 版本

Places SDK for iOS 版本 8.5.0 支持两个 SDK 版本:Places SDK for iOS 是现有的 Places SDK for iOS(新),是新一代的 SDK。

随着 Places SDK for iOS 8.5.0 版的发布,您的第一个任务是决定要使用的 SDK。如果您是新客户或已在使用 SDK 的现有客户,则出现这种情况。您可以参考本指南,了解这两种 SDK 之间的主要区别。

如何选择 SDK 版本

Places SDK for iOS 依赖于 Places API 服务。您必须先在 Google Cloud 项目中启用 Places API 服务,然后才能使用 Places SDK for iOS。

您启用的 Places API 服务版本会控制应用使用的 SDK 版本:

  • Places API:启用现有的 Places SDK for iOS。如果仅为与您的应用所用的 API 密钥关联的项目启用了 Places API,您的应用将无法访问 Places SDK for iOS 8.5.0 及更高版本中添加的新功能。

  • Places API(新):启用 Places SDK for iOS(新),包括“文本搜索”以及添加到 Places SDK for iOS 的主要功能(新)中所述的所有新功能。不启用地点详情、地点照片、当前地点和地点自动补全等现有功能。

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

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

您应选择哪种 SDK?

为帮助您决定选择哪个版本,请按以下步骤操作:

  1. 如果您是刚开始使用 Places SDK for iOS 的新客户,请先使用 Places API(新)和 Places API,以便能够使用所有功能。

  2. 如果您是现有客户,可以继续使用现有 SDK。不过,为了充分利用 Places SDK for iOS(新)的性能提升和功能增强,您可以使用新版 SDK。

    迁移到新 SDK 时无需进行迁移。您只需在应用中使用的 API 密钥启用 Places SDK for iOS(新)。如果您同时使用现有的 Places SDK for iOSPlaces SDK for iOS(新),请为您的 API 密钥同时启用这两个版本。如需了解详情,请参阅使用 API 密钥

添加到 Places SDK for iOS 的主要功能(新)

本部分将介绍 Places SDK for iOS(新)中添加的主要功能。

在 Google Cloud 标准平台上实现

Places SDK for iOS(新)在 Google Cloud 上的服务基础架构上实现。此实现带来了更安全、更值得信赖的平台。 这种标准设计使所有 SDK 都能实现一定程度的一致性,从而利用 Places SDK for iOS(新)提高开发效率。

性能改进

Places SDK for iOS(新)提升了性能,因此值得替换使用现有 SDK 的应用。

文本搜索会根据一个字符串返回一组地点的相关信息,例如“北京烤鸭”“南京附近的鞋店”或“长安街 123 号”。该服务会返回一个与文本字符串和任何位置偏向设置相匹配的地点列表。

简化的价格方案

Places SDK for iOS(新)简化了定价,因此您只需为实际使用的数据量付费。简化的价格是通过字段列表(也称为字段掩码)实现的。

借助 Places SDK for iOS文本搜索,您可以使用字段列表来控制要在响应中返回的字段列表。然后,您只需为请求的数据付费。使用字段列表是一种很好的设计做法,可确保您不会请求不必要的数据,这有助于避免不必要的处理时间和结算费用。

如需详细了解这两种 SDK 的价格信息,请参阅用量和结算

扩展的地点类型

新 SDK 添加了下表中显示的地点类型。这些类型会在“地点详情”和“文本搜索”响应中返回。您也可以在通过“文本搜索”进行搜索时使用这些新类型和现有类型。表 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