设置 Xcode 项目

在启用结算功能并创建 API 密钥后,您便可以设置用于开发应用的 Xcode 项目。

每个版本都有版本说明。

第 1 步:安装所需的软件

若要使用 Navigation SDK for iOS 构建项目,您必须下载并安装:

  • Xcode 26.0 版或更高版本

第 2 步:创建 Xcode 项目并安装 Navigation SDK

Swift Package Manager

Navigation SDK 可通过 Swift Package Manager 安装。如需添加 SDK,请确保您已移除所有现有的 Navigation SDK 依赖项。

如需将 SDK 添加到新项目或现有项目中,请按照以下步骤操作:

  1. 打开 Xcode project 或 workspace,然后前往 File(文件)> Add Package Dependencies(添加软件包依赖项)。
  2. 输入 https://github.com/googlemaps/ios-navigation-sdk 作为网址,按 Enter 键拉取软件包,然后点击“Add Package”(添加软件包)。
  3. 如需安装特定 version,请将 Dependency Rule 字段设置为基于版本的选项之一。对于新项目,我们建议指定最新版本并使用“Exact Version”(确切版本)选项。完成后,点击“添加套餐”。
  4. 在选择软件包产品窗口中,验证 GoogleNavigation 是否会添加到指定的 main 目标。完成后,点击“添加套餐”。
  5. 如需验证安装,请前往目标的 General(常规)窗格。 在 Frameworks, Libraries, and Embedded Content(框架、库和嵌入式内容)中,您应该会看到已安装的软件包。 您还可以查看“Project Navigator”(项目导航器)的“Package Dependencies”(软件包依赖项)部分,以验证软件包及其版本。

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

  1. 在 Xcode 中,依次前往 File(文件)> Packages(软件包)> Update To Latest Package Versions(更新到最新软件包版本)。
  2. 如需验证安装,请前往 Project Navigator 的 Package Dependencies 部分,验证软件包及其版本。

如需移除手动安装的现有 Navigation SDK for iOS,请按以下步骤操作:
  1. 在 Xcode 项目配置设置中,找到 Frameworks, Libraries, and Embedded Content(框架、库和嵌入式内容)。使用减号(-) 移除以下框架:
    • GoogleMaps.xcframework
    • GoogleNavigation.xcframework
  2. 从 Xcode 项目的顶层目录中,移除 GoogleMaps 软件包。

手动安装

本指南介绍了如何手动将包含 Navigation SDK for iOS 和 Maps SDK for iOS 的 XCFrameworks 添加到您的项目中,并在 Xcode 中配置 build 设置。XCFramework 是一种二进制软件包,可在多个平台上使用,包括使用 M1 芯片组的机器

请按照以下步骤安装 Navigation SDK for iOS 和 Maps SDK for iOS 的 XCFramework:

  1. 下载以下 SDK 二进制文件和资源文件:
  2. 启动 Xcode,并打开现有的项目或创建新项目。如果您刚开始接触 iOS,请创建一个新项目并选择 iOS 应用模板。
  3. 从项目中移除所有现有的 Maps、Navigation 和 Places 引用。
  4. 将以下 XCFramework 拖动到项目中的 Frameworks, Libraries, and Embedded Content(框架、库和嵌入内容)下,以同时安装 Maps SDK 和 Navigation SDK(出现提示时,选择 Copy items if needed [根据需要复制内容]):
    • GoogleMaps.xcframework
    • GoogleNavigation.xcframework
  5. 将 GoogleMaps.bundle 从您下载的 GoogleMapsResources 拖动到 Xcode 项目的顶层目录中。出现提示时,确保选中 Copy items if needed(需要时复制项目)。
  6. 将 GoogleNavigation.bundle 从您下载的 GoogleNavigationResources 拖动到 Xcode 项目的顶级目录中。出现提示时,请确保选中将内容复制到目标群组的文件夹中。
  7. 从项目导航器中选择您的项目,然后选择应用的目标。
  8. 打开 Build Phases 标签页,然后在 Link Binary with Libraries 中添加以下框架和库:
    • Accelerate.framework
    • AudioToolbox.framework
    • AVFoundation.framework
    • CarPlay.framework
    • Contacts.framework
    • CoreData.framework
    • CoreGraphics.framework
    • CoreImage.framework
    • CoreLocation.framework
    • CoreTelephony.framework
    • CoreText.framework
    • GLKit.framework
    • ImageIO.framework
    • libc++.tbd
    • libxml2.tbd
    • libz.tbd
    • MapKit.framework
    • Metal.framework
    • OpenGLES.framework
    • QuartzCore.framework
    • Security.framework
    • SystemConfiguration.framework
    • UIKit.framework
    • UserNotifications.framework
    • WebKit.framework
  9. 在应用的目标中,选择 Capabilities(功能)标签页,开启 Background Modes(后台模式),然后启用以下模式:
    • 音频、AirPlay 和画中画
    • 位置信息更新
  10. 选择您的项目(而非特定目标),然后打开 Build Settings 标签页。在 Other Linker Flags(其他链接器标志)部分,为 debug(调试)和 release(发布)添加 ‑ObjC。 如果这些设置不可见,请将 Build Settings 栏中的过滤条件从 Basic 更改为 All。
  11. 打开 Info.plist 并添加以下键值对:
    • 键: NSLocationWhenInUseUsageDescription(隐私 - 使用位置信息时的使用说明)
      值:“此应用需要获得使用您位置信息的权限,以便提供精细导航。”
    • 键: NSLocationAlwaysAndWhenInUseUsageDescription(Privacy - Location Always and When In Use Usage Description)
      值:“此应用需要获得使用您位置信息的权限,以便提供精细导航。”

第 3 步:将您的 API 密钥添加到项目中

以下示例展示了如何在 Xcode 中将 API 密钥添加到项目中:

Swift

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

  1. 添加以下 import 语句:
    import GoogleMaps
    import GoogleNavigation
  2. 将以下内容添加到 application(_:didFinishLaunchingWithOptions:) 方法中:
    GMSServices.provideAPIKey("YOUR_API_KEY")

Objective-C

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

  1. 添加以下 import 语句:
    @import GoogleMaps;
    @import GoogleNavigation;
  2. 将以下内容添加到 application:didFinishLaunchingWithOptions: 方法中:
    [GMSServices provideAPIKey:@"YOUR_API_KEY"];

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

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

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

如果您是 Mobility Services 客户

如果您是 Mobility Services 客户,请参阅 Mobility 文档,了解结算信息。如需详细了解如何记录交易,请参阅设置结算。如需了解如何向 Navigation SDK 实现添加交易 ID,请参阅将服务用量与 Mobility 交易相关联。

后续步骤

现在,您已经有了 API 密钥和 Xcode 项目,接下来便可以创建和运行应用了。 Navigation SDK for iOS 提供了可帮助您顺利上手的教程。如需了解详情,请参阅以下文档: