启用结算功能并创建 API 密钥后,您就可以设置用于开发应用的 Xcode 项目了。
每一个版本都有版本说明。
第 1 步:安装所需的软件
若要使用 Places SDK for iOS 构建项目,您需要:
- Xcode 版本 15.0 或更高版本
第 2 步:创建 Xcode 项目并安装 Places SDK for iOS
Swift Package Manager
您可以通过 Swift Package Manager 安装 Places SDK for iOS。如需添加该 SDK,请确保您已移除所有现有的 Places SDK for iOS 依赖项。
如需将 SDK 添加到新的或现有项目,请按以下步骤操作:
-
打开 Xcode
project
或workspace
,然后依次点击 File(文件)> Add Package Dependencies(添加软件包依赖项)。 - 输入 https://github.com/googlemaps/ios-places-sdk 作为网址,按 Enter 键提取软件包,然后点击“添加软件包”。
-
如需安装特定的
version
,请将依赖项规则字段设置为基于版本的选项之一。对于新项目,我们建议指定最新版本并使用“确切版本”选项。完成后,点击“添加文件包”。 - 在 Choose Package Products 窗口中,验证
GooglePlaces
和/或GooglePlacesSwift
是否会添加到您指定的主要目标。完成后,点击添加文件包。如果您要更新 Google 地图 Swift
重要提示:用于访问 Google 地图 Swift 的 GitHub 网址已更改。如果您要更新通过旧网址
https://github.com/googlemaps/ios-places-swift-sdk
访问的 GooglePlacesSwift 版本,请将其从 Xcode 的软件包依赖项部分中移除。 - 如需验证安装情况,请前往目标的常规窗格。在框架、库和嵌入式内容中,您应该会看到已安装的软件包。您还可以查看 Project Navigator 的 Package Dependencies 部分,以验证软件包及其版本。Xcode 会显示 GitHub 版本,该版本与 GooglePlaces 的版本(例如 9.2.0)相匹配,但与 GooglePlacesSwift 的版本(例如 0.3.0)不匹配。
如需更新现有项目的 package
,请按以下步骤操作:
-
在 Xcode 中,依次点击“File”(文件)>“Packages”(软件包)>“Update To Latest Package Versions”(更新到最新软件包版本)。
如果您要更新 Google 地图 Swift
重要提示:用于访问 Google 地图 Swift 的 GitHub 网址已更改。如果您要更新通过旧网址
https://github.com/googlemaps/ios-places-swift-sdk
访问的 GooglePlacesSwift 版本,请将其从 Xcode 的软件包依赖项部分中移除。 - 如需验证安装情况,请前往 Project Navigator 的 Package Dependencies 部分,验证软件包及其版本。
如需移除手动安装的现有 Places SDK for iOS,请按以下步骤操作:
-
在 Xcode 项目配置设置中,找到框架、库和嵌入内容。使用减号(-) 移除以下框架:
GooglePlaces.xcframework
GooglePlacesSwift.xcframework
-
从 Xcode 项目的顶级目录中移除
GooglePlaces
软件包。
手动安装
本指南介绍了如何将包含 Places SDK for iOS 和 Places Swift SDK for iOS(预览版)的 XCFrameworks 手动添加到您的项目中,并在 Xcode 中配置您的构建设置。XCFramework 是一种二进制软件包,可在多个平台(包括使用 Apple 硅芯片的机器)上使用。您可以选择添加 Places SDK for iOS、Places Swift SDK for iOS(预览版)或二者兼有。
- 下载以下 SDK 二进制文件和资源文件:
- 如果您要安装 Places Swift SDK for iOS(预览版),请安装以下文件:
- 解压缩文件以访问 XCFramework 和资源。
- 启动 Xcode,并打开现有的项目或创建新项目。如果您刚开始接触 iOS 开发,请创建一个新项目,然后选择 iOS App template [iOS 应用模板]。
- 移除项目中之前版本的任何地图捆绑包。
-
打开常规标签页。将以下 XCFramework 拖动到项目的 Frameworks、Libraries 和 Embedded Content 下。请务必选择不嵌入:
GooglePlaces.xcframework
GooglePlacesSwift.xcframework
-
将您下载的 GooglePlacesResources 中的
GooglePlaces.bundle
复制到 Xcode 项目的顶层目录中。请务必在系统提示时选择 Copy items into destination group's folder(将项目复制到目标组的文件夹)。
如果您要安装适用于 iOS 的 Places Swift SDK(预览版),请将您下载的 GooglePlacesSwiftResources 中的GooglePlacesSwift.bundle
复制到 Xcode 项目的顶级目录。出现提示时,请务必选择 Copy items into destination group's folder。 - 从 Project Navigator 中选择您的项目,然后选择应用的目标。
-
打开 Build Phases 标签页。在 Link Binary with Libraries 中,添加以下框架和库:
CoreGraphics.framework
CoreLocation.framework
libc++.tbd
libz.tbd
QuartzCore.framework
UIKit.framework
-
选择项目(而不是具体目标),然后打开“Build Settings”(构建设置)标签页。在 Linking - General -> Other Linker Flags 部分中,将
-ObjC
添加到“Debug”和“Release”。如果看不到这些设置,请将“Build Settings”(构建设置)栏中的过滤条件从“Basic”(基本)更改为“All”(全部)。
CocoaPods
Places SDK for iOS 和 Places Swift SDK for iOS(预览版)以 CocoaPod pod 的形式提供,分别为 GooglePlaces 和 GooglePlacesSwift。
CocoaPods 是一种用于 Swift 和 Objective-C Cocoa 项目的开源依赖项管理器。如果您尚未安装 CocoaPods 工具,请在 macOS 上从终端运行以下命令进行安装。如需了解详情,请参阅 CocoaPods 入门指南。
sudo gem install cocoapods
创建 Podfile
以安装 SDK 及其依赖项:
- 如果您尚未创建 Xcode 项目,请立即创建一个并将其保存到您的本地计算机上。如果您刚开始接触 iOS 开发,请创建一个新项目,然后选择 iOS 应用模板。
- 在您的项目目录中创建一个名为
Podfile
的文件。此文件可定义您项目的依赖项。 - 修改
Podfile
并添加您的依赖项及其版本。以下示例指定了应用目标名称以及GooglePlaces
和GooglePlacesSwift
pod 的名称: 请务必定期运行source 'https://github.com/CocoaPods/Specs.git' platform :ios, '15.0' target 'YOUR_APPLICATION_TARGET_NAME_HERE' do pod 'GooglePlaces', '9.2.0' pod 'GooglePlacesSwift', '0.3.0' end
pod outdated
,以检测是否有较新版本,确保您始终使用最新版本。 - 保存
Podfile
。 打开一个终端,然后转到包含
Podfile
的目录:cd <path-to-project>
运行
pod install
命令。此操作会安装Podfile
中指定的 API 及其可能具有的任何依赖项。pod install
关闭 Xcode,然后打开(双击)您项目的
.xcworkspace
文件以启动 Xcode。从此刻开始,您必须使用.xcworkspace
文件打开项目。
如需更新现有项目的 API,请按以下步骤操作:
- 打开一个终端,然后前往包含
Podfile
的项目目录。 - 运行
pod update
命令。这会将Podfile
中指定的所有 API 更新为最新版本。
第 3 步:将 API 密钥添加到您的应用
在下例中,请将 YOUR_API_KEY
替换为您的 API 密钥。
Swift
按照以下方法向 AppDelegate.swift
添加 API 密钥:
- 添加以下 import 语句:
import GooglePlaces
- 将以下内容添加到您的
application(_:didFinishLaunchingWithOptions:)
方法中,并将 YOUR_API_KEY 替换为您的 API 密钥:GMSPlacesClient.provideAPIKey("YOUR_API_KEY")
Objective-C
按照以下方法向 AppDelegate.m
添加 API 密钥:
- 添加以下 import 语句:
@import GooglePlaces;
- 将以下内容添加到您的
application:didFinishLaunchingWithOptions:
方法,并将其中的“YOUR_API_KEY”替换为您的 API 密钥:YOUR_API_KEY[GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];
GooglePlacesSwift
按照以下方法向 AppDelegate.swift
添加 API 密钥:
- 添加以下 import 语句:
import GooglePlacesSwift
- 将以下内容添加到您的
application(_:didFinishLaunchingWithOptions:)
方法,并将其中的“YOUR_API_KEY”替换为您的 API 密钥:YOUR_API_KEYPlacesClient.provideAPIKey("YOUR_API_KEY")
第 4 步(可选):检查 Apple 隐私清单文件
Apple 要求在 App Store 上架的应用提供应用隐私权详细信息。如需了解最新动态和更多信息,请访问 Apple App Store 隐私权详细信息页面。
Apple 隐私权清单文件包含在 SDK 的资源 bundle 中。如需验证是否已添加隐私权清单文件并检查其内容,请创建应用的归档文件,然后从归档文件生成隐私权报告。