設定 Xcode 專案

啟用結帳功能並建立 API 金鑰後,即可設定要用來開發應用程式的 Xcode 專案。

每個版本都會提供版本資訊

步驟 1:安裝必要軟體

如要使用 Navigation SDK for iOS 建構專案,您必須下載並安裝:

  • Xcode 15.0 以上版本

步驟 2:建立 Xcode 專案並安裝 Navigation SDK

Swift Package Manager

您可以透過 Swift Package Manager 安裝 Navigation SDK。如要新增 SDK,請務必移除所有現有的 Navigation SDK 依附元件。

如要將 SDK 加進新的或現有專案,請按照下列步驟操作:

  1. 開啟 Xcode projectworkspace,然後依序點選「File」>「Add Package Dependencies」
  2. 輸入 https://github.com/googlemaps/ios-navigation-sdk 做為網址,按下 Enter 鍵即可匯入套件,然後按一下「新增套件」。
  3. 如要安裝特定 version,請將「Dependency Rule」欄位設為其中一個版本選項。對於新專案,建議您指定最新版本並使用「Exact Version」選項。完成後,按一下「新增套件」。

如要更新現有專案的 package,請按照下列步驟操作:

  1. 如要驗證安裝作業,請前往 Project Navigator 的「Package Dependencies」部分,驗證套件及其版本。

如要移除手動安裝的現有 Navigation SDK for iOS,請按照下列步驟操作:
  1. 在 Xcode 專案設定中,找出「Frameworks、Libraries 和 Embedded Content」。使用減號(-) 移除下列架構:
    • GoogleMaps.xcframework
    • GoogleNavigation.xcframework
  2. 從 Xcode 專案的頂層目錄中,移除 GoogleMaps 套件。

手動安裝程式庫

本指南將說明如何手動將包含 Navigation SDK for iOS 的 XCFramework 和 Maps SDK for iOS 新增至專案,並在 Xcode 中完成建構設定。XCFramework 是可在多個平台上使用的二進位檔案,包括使用 M1 晶片組的機器

請按照下列步驟安裝 Navigation SDK for iOS 和 Maps SDK for iOS 的 XCFramework:

  1. 下載下列 SDK 二進位檔和資源檔案:
  2. 啟動 Xcode,接著開啟現有專案,或建立新專案。如果您是 iOS 新手,請建立新專案,並選取「iOS App 範本」
  3. 從專案中移除所有現有的 Google 地圖、導航和地點參照。
  4. 將下列 XCFramework 拖曳至「Frameworks、Libraries 和 Embedded Content」底下的專案中,即可安裝 Maps 和 Navigation SDK (當系統顯示提示時,請選取「Copy items if needed」)
    • GoogleMaps.xcframework
    • GoogleNavigation.xcframework
  5. 將下載的 GoogleMapsResources 中的 GoogleMaps.bundle 拖曳至 Xcode 專案的頂層目錄。畫面顯示提示時,請確認已選取「Copy items if needed」
  6. 將您下載的 GoogleNavigationResources 中的 GoogleNavigation.bundle 拖曳至 Xcode 專案的頂層目錄。畫面顯示提示時,請確認已選取「Copy items into destination group's folder」
  7. 從「Project Navigator」中選取您的專案,然後為您的應用程式選擇目標。
  8. 開啟「Build Phases」分頁標籤,然後在「Link Binary with Libraries」內加入下列架構和程式庫:
    • Accelerate.framework
    • AudioToolbox.framework
    • AVFoundation.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
    • 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 (隱私權 - 位置資訊的「一律允許」和「使用中」用途說明)
      值:「這個應用程式需要取得位置資訊存取權,才能提供即時路線導航服務。」

CocoaPods

Navigation SDK for iOS 以 CocoaPods Pod 的形式提供。CocoaPods 是一種適用於 Swift 和 Objective-C Cocoa 專案的開放原始碼依附元件管理員。

如果您還沒有 CocoaPods 工具,請在終端機上執行下列指令,即可在 macOS 中安裝這項工具。詳情請參閱 CocoaPods 入門指南

sudo gem install cocoapods

為 Navigation SDK for iOS 建立 Podfile,並使用該檔案安裝 API 及其依附元件:

  1. 如果您還沒有 Xcode 專案,請立即建立一個並儲存至本機電腦 如果您是 iOS 開發新手:
    1. 建立新專案。
    2. 依序選取「iOS」>「App」範本。
    3. 在專案選項畫面中:
      1. 輸入「專案名稱」
      2. 記下「Bundle identifier」欄位的值。 您可以使用該值限制下方的 API 金鑰。
      3. 將專案的「介面」設為「分鏡表」
      4. 將「Language」設為「Swift」或「Objective-C」
  2. 在專案目錄中建立名為 Podfile 的檔案。這個檔案定義了專案的依附元件。
  3. 編輯 Podfile,並新增依附元件和版本。以下範例包含 Navigation SDK for iOS 所需的依附元件: # Cocoapods 安裝參考資料 #
    source 'https://github.com/CocoaPods/Specs.git'
    
    platform :ios, '15.0'
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GoogleNavigation', '9.2.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 金鑰加進專案

以下範例說明如何在 Xcode 中將 API 金鑰新增至專案:

Swift

將 API 金鑰新增到您的 AppDelegate.swift 中,如下所示:

  1. 新增下列匯入陳述式:
    import GoogleMaps
    import GoogleNavigation
  2. 將下列內容新增至 application(_:didFinishLaunchingWithOptions:) 方法:
    GMSServices.provideAPIKey("YOUR_API_KEY")

Objective-C

將 API 金鑰新增到您的 AppDelegate.m 中,如下所示:

  1. 新增下列匯入陳述式:
    @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 提供教學課程,協助您快速上手。相關詳情請參閱: