设置 Xcode 项目

启用结算功能并创建 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 添加到新的或现有项目,请按以下步骤操作:

  1. 打开 Xcode projectworkspace,然后依次点击 File(文件)> Add Package Dependencies(添加软件包依赖项)
  2. 输入 https://github.com/googlemaps/ios-places-sdk 作为网址,按 Enter 键提取软件包,然后点击“Add Package”(添加软件包)。
  3. 如需安装特定的 version,请将依赖项规则字段设置为基于版本的选项之一。对于新项目,我们建议您指定最新版本并使用“确切版本”选项。完成后,点击“添加文件包”。
  4. Choose Package Products 窗口中,验证 GooglePlaces 和/或 GooglePlacesSwift 是否会添加到您指定的主要目标。完成后,点击添加文件包

    如果您要通过已废弃的 GitHub 网址更新 Google 地图 Swift

    重要提示:从 0.3.0 版开始,用于访问 Google 地图 Swift 的 GitHub 网址已更改。如果您要更新通过旧网址 https://github.com/googlemaps/ios-places-swift-sdk 访问的 GooglePlacesSwift 版本,请将其从 Xcode 的软件包依赖项部分中移除。

  5. 如需验证安装情况,请前往目标的常规窗格。在框架、库和嵌入内容中,您应该会看到已安装的软件包。您还可以查看 Project NavigatorPackage Dependencies 部分,以验证软件包及其版本。

如需更新现有项目的 package,请按以下步骤操作:

  1. 在 Xcode 中,依次前往“File”(文件)>“Packages”(软件包)>“Update To Latest Package Versions”(更新到最新的软件包版本)。

    如果您要通过已废弃的 GitHub 网址更新 Google 地图 Swift

    重要提示:从 0.3.0 版开始,用于访问 Google 地图 Swift 的 GitHub 网址已更改。如果您要更新通过旧网址 https://github.com/googlemaps/ios-places-swift-sdk 访问的 GooglePlacesSwift 版本,请将其从 Xcode 的软件包依赖项部分中移除。

  2. 如需验证安装情况,请前往 Project NavigatorPackage Dependencies 部分,验证软件包及其版本。

如需移除手动安装的现有 Places SDK for iOS,请按以下步骤操作:

  1. 在 Xcode 项目配置设置中,找到 Frameworks, Libraries, and Embedded Content(框架、库和嵌入内容)。使用减号(-) 移除以下框架:
    • GooglePlaces.xcframework
    • GooglePlacesSwift.xcframework
  2. 从 Xcode 项目的顶级目录中移除 GooglePlaces 软件包。

手动安装

本指南介绍了如何向您的项目手动添加包含 Places SDK for iOS 和 Places Swift SDK for iOS 的 XCFramework,以及如何在 Xcode 中配置您的构建设置。XCFramework 是一种二进制软件包,可在多个平台(包括使用 Apple 硅芯片的机器)上使用。您可以选择添加 Places SDK for iOS 和/或 Places Swift SDK for iOS。

  1. 下载以下 SDK 二进制文件和资源文件:
  2. 如果您要安装适用于 iOS 的 Places Swift SDK,请安装以下文件:
  3. 解压缩文件以访问 XCFramework 和资源。
  4. 启动 Xcode,并打开现有的项目或创建新项目。如果您刚开始接触 iOS 开发,请创建一个新项目,然后选择 iOS App template [iOS 应用模板]。
  5. 移除项目中之前版本的任何地图捆绑包。
  6. 打开常规标签页。将以下 XCFramework 拖动到项目的 Frameworks, Libraries, and Embedded Content(框架、库和嵌入内容)下。请务必选择不嵌入
    • GooglePlaces.xcframework
    如果您要安装 Places Swift SDK,请将以下 XCFramework 拖动到项目的“框架、库和嵌入式内容”下。请务必选择不嵌入
    • GooglePlacesSwift.xcframework
  7. 将您下载的 GooglePlacesResources 中的 GooglePlaces.bundle 复制到 Xcode 项目的顶层目录中。系统显示提示时,请务必选择 将项目复制到目标组的文件夹

    如果您要安装 Places Swift SDK,请将您下载的 GooglePlacesSwiftResources 中的 GooglePlacesSwift.bundle 复制到 Xcode 项目的顶级目录中。系统显示提示时,请务必选择将项目复制到目标组的文件夹
  8. 从项目导航器中选择项目,然后选择应用的目标。
  9. 打开 Build Phases 标签页。在 Link Binary with Libraries(将二进制文件链接到库)中,添加以下框架和库:
    • CoreGraphics.framework
    • CoreLocation.framework
    • libc++.tbd
    • libz.tbd
    • QuartzCore.framework
    • UIKit.framework
  10. 选择项目而不是具体的目标,并打开“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 的形式提供,分别为 GooglePlacesGooglePlacesSwift

CocoaPods 是一种用于 Swift 和 Objective-C Cocoa 项目的开源依赖项管理器。如果您尚未安装 CocoaPods 工具,请在 macOS 上从终端运行以下命令进行安装。如需了解详情,请参阅 CocoaPods 入门指南

sudo gem install cocoapods

创建 Podfile 以安装 SDK 及其依赖项:

  1. 如果您尚未创建 Xcode 项目,请立即创建一个并将其保存到您的本地计算机上。如果您刚开始接触 iOS 开发,请创建一个新项目,然后选择 iOS App template [iOS 应用模板]。
  2. 在您的项目目录中创建一个名为 Podfile 的文件。此文件可定义您项目的依赖项。
  3. 修改 Podfile 并添加您的依赖项及其版本。以下示例指定了应用目标名称以及 GooglePlacesGooglePlacesSwift pod 的名称:
    source 'https://github.com/CocoaPods/Specs.git'
    
    platform :ios, '16.0'
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GooglePlaces', '10.0.0'
      pod 'GooglePlacesSwift', '10.0.0'
    end
    请务必定期运行 pod outdated,以检测是否有较新版本,确保您始终使用最新版本。
  4. 保存 Podfile
  5. 打开一个终端,然后转到包含 Podfile 的目录:

    cd <path-to-project>
  6. 运行 pod install 命令。此操作会安装 Podfile 中指定的 API 及其可能具有的任何依赖项。

    pod install
  7. 关闭 Xcode,然后打开(双击)您项目的 .xcworkspace 文件以启动 Xcode。从此刻开始,您必须使用 .xcworkspace 文件打开项目。

如需更新现有项目的 API,请按以下步骤操作:

  1. 打开一个终端,然后转到包含 Podfile 的项目目录。
  2. 运行 pod update 命令。这会将 Podfile 中指定的所有 API 更新为最新版本。

第 3 步:将 API 密钥添加到您的应用

在下例中,请将 YOUR_API_KEY 替换为您的 API 密钥。

GooglePlacesSwift

按照以下方法向 AppDelegate.swift 添加 API 密钥:

  • 添加以下 import 语句:
    import GooglePlacesSwift
  • 将以下内容添加到您的 application(_:didFinishLaunchingWithOptions:) 方法,并将其中的“YOUR_API_KEY”替换为您的 API 密钥:YOUR_API_KEY
    PlacesClient.provideAPIKey("YOUR_API_KEY")

Swift

按照以下方法向 AppDelegate.swift 添加 API 密钥:

  • 添加以下 import 语句:
    import GooglePlaces
  • 将以下内容添加到您的 application(_:didFinishLaunchingWithOptions:) 方法,并将其中的“YOUR_API_KEY”替换为您的 API 密钥:YOUR_API_KEY
    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"];

第 4 步(可选):检查 Apple 隐私权清单文件

Apple 要求在 App Store 上架的应用提供应用隐私权详细信息。如需了解最新动态和更多信息,请访问 Apple App Store 隐私权详细信息页面

Apple 隐私权清单文件包含在 SDK 的资源 bundle 中。如需验证是否已添加隐私权清单文件并检查其内容,请创建应用的归档文件,然后从归档文件中生成隐私权报告

后续步骤