Places SDK for iOS 功能 由 SDK 版本号(例如 9.0.0)共同决定, 您在软件包依赖项中指定的以及 API 密钥上启用的 API 数量。 本指南介绍了版本之间的差异以及如何选择 版本。
SDK 版本号
您在软件包依赖项中指定的 SDK 版本号 决定您的应用是否可以使用 特定版本例如,自动补全(新)只能在 SDK 中使用 9.0.0 或更高版本。
有关各 SDK 版本中引入的变更的详情,请参见商家信息 iOS 版 SDK 版本说明。
适用于 Places SDK for iOS 的 Places API 版本
除了指定 SDK 版本号之外,您还必须选择“地点” SDK 在 Google Cloud 控制台中调用的 API 服务:Places API 或 Places API(新)。与 SDK 版本号一起 “选择”决定了您的应用中提供了具体功能的具体版本, 例如“自动补全”或“自动补全(新)”虽然您只能指定一个 SDK 版本号,则可以在您的 API 密钥。不过,在大多数情况下 Places API(新)并在您的应用中使用(新)版本的 SDK 功能。
选择您的 SDK 版本和 API 服务
如需选择在您的应用中提供哪些 SDK 功能,请执行以下操作:
- 在您的 Google Cloud 项目中,启用 Places API、Places API(新)或 两者都有。有关详情,请参阅启用 API
- 在您的 API 密钥限制中,启用 Places API、Places API(新)或 两者都有。如需了解详情,请参阅限制 API 密钥。
- 安装 SDK 时,请指定版本号。如需更多信息 请参阅设置 Xcode 项目。
有关选择 Places API 服务的详情,请参阅设置您的 Google Cloud 项目。
每个版本提供的 SDK 功能
下表显示了每个 SDK 所需的 SDK 和 API 版本 功能:
功能 | 已为 API 密钥启用 Places API | 最低 SDK 版本 |
---|---|---|
自动补全(新) | Places API(新) | 9.0.0 |
地点详情(新) | Places API(新) | 9.0.0 |
附近搜索(新) | Places API(新) | 9.0.0 |
地点照片(新) | Places API(新) | 9.0.0 |
文本搜索(新) | Places API(新) | 8.5.0 |
地点自动填充 | Places API | 3.0.0 |
当前地点 | Places API | 3.0.0 |
地点详情 | Places API | 3.0.0 |
地点照片 | Places API | 3.0.0 |
选择要启用的版本时的注意事项
- 如果您是刚开始使用 Places SDK for iOS 的新客户, 开始使用 Places API(新)和新版 SDK。
- 如果您是现有客户,可以继续使用现有 SDK。 不过,要充分利用性能改进和功能 Places SDK for iOS(新)的增强版,您应启用 Places API (新)并使用新版 SDK。迁移到 只需按照选择您的 SDK 版本和 API 服务。
- Places API(新)不会启用某些现有的
功能,例如当前
地点,
GMSPlace.isOpen
和GMSPlaceisOpenAtDate
。
使用 GooglePlacesSwift 预览版
若要使用 GooglePlacesSwift,请按以下步骤操作:
- 启用 Places API (新)。
- 将 GooglePlacesSwiftSDK 添加到依赖项
- 使用以下命令初始化 Places 客户端:
PlacesClient
。
如需详细了解 GooglePlacesSwift,请参阅参考文档 文档。
迁移到新 API
如果您使用的是现有 API 并想迁移至新 API,请参阅 以下迁移指南:
Places SDK for iOS 中的增强功能(新)
本部分介绍了 Places SDK for iOS 中添加的主要功能 (新)。
在 Google Cloud 标准平台上实现
在服务上实现了 Places SDK for iOS(新) 基础架构 。此实现带来了一个更安全、更值得信赖的平台。 这种标准设计使 SDK 之间保持了一定程度的一致性, 提高 Places SDK for iOS 的开发效率 (新)。
性能改进
Places SDK for iOS(新)提升了性能, 替换使用现有 SDK 的应用是值得的。
新功能
Places SDK for iOS(新)包含 所有 SDK 功能:
简化的价格方案
Places SDK for iOS(新)简化了定价流程, 您只需为实际使用的流量付费。使用 字段实施简化定价 列表(也称为字段掩码)。
使用 Places SDK for iOS 和 文本搜索 - 您可以使用字段列表来控制 要在响应中返回的字段。然后,您只需为数据付费 请求。使用字段列表是一种很好的设计做法, 请求不必要的数据,这有助于避免不必要的处理时间和 结算费用。
有关这两种 SDK 的详细定价信息,请参阅使用量和 结算。
展开的地点类型
新 SDK 添加了下表所示的地点类型。这些类型包括 作为“地点详情”的一部分返回 文本搜索响应。您还可以使用这些新类型 和现有类型。 新类型包含在表格中 答:
类型 | |||
---|---|---|---|
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 |
顾问 | 直升飞机场 | 游乐场 | 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(新)还迁移了以下类型 从表 2(适用于 Places API)到表 A(适用于 Places API) 也就是说,您现在可以将这些类型 搜索:
country
administrative_area_level_1
administrative_area_level_2
postal_code
locality