開始使用 iOS 和 macOS 適用的 Google 登入功能

您必須先下載依附元件,並設定 Xcode 專案,才能開始將 iOS 或 macOS 應用程式與 Google 登入元件整合。本頁面的步驟就是為了達成這個目標。接著,後續步驟會說明如何將 Google 登入功能整合至應用程式。

事前準備

安裝最新版本的 Xcode

在專案中安裝 Google 登入依附元件

CocoaPods

  1. 如果您尚未安裝 CocoaPods,請按照 CocoaPods 入門指南中的步驟操作。

  2. 開啟終端機視窗,然後前往應用程式的 Xcode 專案位置。

  3. 如果您尚未為應用程式建立 Podfile,請立即建立一個:

    pod init

  4. 開啟為應用程式建立的 Podfile,然後新增下列內容:

    pod 'GoogleSignIn'

  5. 如果您使用的是 SwiftUI,請為「使用 Google 帳戶登入」按鈕新增 Pod 擴充功能:

    pod 'GoogleSignInSwiftSupport'

  6. 儲存檔案並執行下列指令:

    pod install

  7. 在 Xcode 中開啟應用程式產生的 .xcworkspace workspace 檔案。應用程式日後的所有開發作業都將使用這個檔案。(請注意,這與內含的 .xcodeproj project 檔案不同,後者在開啟時會導致建構錯誤)。

    您可以參考 Objective-C 範例應用程式的 Podfile 瞭解相關示例。

Swift Package Manager

  1. 在 Xcode 中開啟專案。

  2. 將 Google 登入依附元件新增至應用程式 (Xcode 說明文件):

    存放區 https://github.com/google/GoogleSignIn-iOS
    版本 7.0.0
    包裝產品 GoogleSignIn
  3. 如果您使用的是 SwiftUI,請為「使用 Google 帳戶登入」按鈕新增下列擴充功能套件產品:

    包裝產品 GoogleSignInSwift

取得 OAuth 用戶端 ID

您的應用程式需要 OAuth 用戶端 ID,才能向 Google 的驗證後端識別自身。如果是 iOS 和 macOS 應用程式,則必須將 OAuth 用戶端 ID 應用程式類型設為 iOS。

如果您尚未建立 OAuth 用戶端 ID,請按一下下方按鈕。

建立 OAuth 用戶端 ID

建立 OAuth 用戶端 ID 後,請記下用戶端 ID 字串,因為您需要在應用程式中設定 Google 登入功能。您可以選擇下載設定檔,其中包含用戶端 ID 和其他設定資料,方便日後參考。

如果您已建立 OAuth 用戶端 ID,請按一下下方按鈕,查看現有的 OAuth 資訊。

取得現有的 OAuth 用戶端 ID

取得 OAuth 伺服器用戶端 ID

大多數應用程式都需要將已登入使用者的身分傳遞至某種後端服務。如要將透過 Google 登入的使用者身分安全地傳遞至後端,請使用 ID 權杖,如「透過後端伺服器驗證」一節所述。如要擷取使用者的 ID 權杖,您需要第二個用戶端 ID,也就是代表後端的 伺服器用戶端 ID。

如要建立伺服器用戶端 ID,請按照下列步驟操作:

  1. Cloud 控制台中開啟專案。

  2. 建立新的「網頁應用程式」類型 OAuth 用戶端 ID。請記下用戶端 ID 字串,您需要在應用程式中設定 Google 登入。

設定應用程式專案

Google 登入服務要求您使用 OAuth 用戶端 ID 和自訂網址配置專案。您也可以視需要新增伺服器用戶端 ID,以便進行後端驗證,或針對 Google Workspace 網域最佳化應用程式。

新增 OAuth 用戶端 ID 和自訂網址配置

更新應用程式的 Info.plist 檔案,以便新增 OAuth 用戶端 ID,並根據反轉的用戶端 ID 建立自訂網址配置。

反轉的客戶 ID 是您的客戶 ID,其中以點號分隔欄位的順序已反轉。在雲端控制台中選取現有的 iOS OAuth 用戶端時,也會在「iOS 網址通訊協定」下方顯示這項資訊。例如:com.googleusercontent.apps.1234567890-abcdefg

<key>GIDClientID</key>
<string>YOUR_IOS_CLIENT_ID</string>
<key>CFBundleURLTypes</key>
<array>
  <dict>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string>
    </array>
  </dict>
</array>

選用:設定後端驗證

如果您需要取得使用者的 ID 權杖,以便進行後端驗證,請在應用程式的 Info.plist 檔案中設定 GIDServerClientID 鍵。

<key>GIDServerClientID</key>
<string>YOUR_SERVER_CLIENT_ID</string>

選用:針對 Google Workspace 網域或 OpenID 領域進行最佳化

如要針對 Google Workspace 網域最佳化登入流程,請使用 GIDHostedDomain 參數。

<key>GIDHostedDomain</key>
<string>YOUR_HOSTED_DOMAIN</string>

如要指定 OpenID 領域,請使用 GIDOpenIDRealm 參數。

<key>GIDOpenIDRealm</key>
<string>YOUR_OPENID_REALM</string>

簽署應用程式

您的應用程式必須使用 Apple 核發的憑證簽署,才能在 macOS 和 iOS 裝置上原生執行,以便透過密碼金鑰儲存憑證。

後續步驟

您已下載專案依附元件並設定 Xcode 專案,現在可以將 Google 登入新增至 iOS 應用程式。