Pierwsze kroki z logowaniem przez Google na iOS i macOS

Zanim będzie można zintegrować aplikację na iOS lub macOS z komponentami Logowanie przez Google, musisz pobrać zależności i skonfigurować projekt Xcode. Instrukcje znajdziesz na tej stronie. Kolejne kroki pomogą Ci zintegrować funkcje Logowania przez Google z Twoją aplikacją.

Zanim zaczniesz

Zainstaluj aktualną wersję Xcode.

Instalowanie zależności Logowania przez Google w projekcie

CocoaPods

  1. Jeśli nie masz jeszcze zainstalowanego CocoaPods, wykonaj czynności opisane w przewodniku CocoaPods.

  2. Otwórz okno terminala i przejdź do lokalizacji projektu Xcode Twojej aplikacji.

  3. Jeśli nie masz jeszcze utworzonego pliku Podfile dla aplikacji, utwórz go teraz:

    pod init

  4. Otwórz plik Podfile utworzony dla Twojej aplikacji i dodaj:

    pod 'GoogleSignIn'

  5. Jeśli używasz SwiftUI, dodaj też rozszerzenie poda dla przycisku „Sign in with Google” (Zaloguj się przez Google):

    pod 'GoogleSignInSwiftSupport'

  6. Zapisz plik i uruchom:

    pod install

  7. Otwórz wygenerowany plik .xcworkspace obszaru roboczego aplikacji w formacie Xcode. Używaj tego pliku we wszystkich następnych procesach związanych z programowaniem aplikacji. (Uwaga: ten plik różni się od załączonego pliku projektu .xcodeproj, co może powodować błędy kompilacji po otwarciu).

    Możesz skorzystać z przykładowego pliku Podfile aplikacji przykładowej C.

Menedżer pakietów Swift

  1. Otwórz projekt w Xcode.

  2. Dodaj zależności aplikacji Logowanie przez Google w aplikacji (dokumentacja Xcode):

    Repozytorium https://github.com/google/GoogleSignIn-iOS
    Wersja 6.0.2
    Produkt w pakiecie Logowanie przez Google
  3. Jeśli używasz SwiftUI, dodaj też pakiet rozszerzeń do przycisku „Zaloguj się przez Google”:

    Produkt w pakiecie GoogleSignInSwift

Uzyskiwanie identyfikatora klienta OAuth

Twoja aplikacja wymaga identyfikatora klienta OAuth do identyfikowania się w backendzie uwierzytelniania Google. W przypadku aplikacji na iOS i macOS Typ aplikacji identyfikatora klienta OAuth musi być skonfigurowany jako iOS.

Jeśli nie masz jeszcze identyfikatora klienta OAuth, kliknij przycisk poniżej, aby go utworzyć.

Tworzenie identyfikatora klienta OAuth

Po utworzeniu identyfikatora klienta OAuth zwróć uwagę na ciąg identyfikatora klienta, który musisz skonfigurować w aplikacji w aplikacji Google. Możesz pobrać plik konfiguracji, który zawiera Twój identyfikator klienta i inne dane konfiguracyjne do wykorzystania w przyszłości.

Jeśli masz już utworzony identyfikator klienta OAuth, możesz znaleźć dotychczasowe informacje OAuth, klikając przycisk poniżej.

Uzyskaj istniejący identyfikator klienta OAuth

Uzyskiwanie identyfikatora klienta serwera OAuth

Większość aplikacji musi przekazywać tożsamość zalogowanych użytkowników do usługi backendu. Aby bezpiecznie przekazywać tożsamość użytkowników, którzy logowali się przez Google do backendu, użyj tokenów tożsamości zgodnie z opisem w artykule Uwierzytelnianie przy użyciu serwera backendu. Pobranie tokena identyfikatora użytkownika wymaga drugiego identyfikatora klienta, czyli identyfikatora klienta odpowiadającego backendowi.

Aby utworzyć identyfikator klienta serwera:

  1. Otwórz projekt w konsoli Google Cloud.

  2. Utwórz nowy identyfikator klienta OAuth typu aplikacja internetowa. Zwróć uwagę na ciąg identyfikatora klienta, który musisz skonfigurować w aplikacji.

Konfigurowanie projektu aplikacji

Logowanie przez Google wymaga skonfigurowania Twojego projektu za pomocą identyfikatora klienta OAuth i niestandardowego schematu adresów URL. Opcjonalnie możesz też dodać identyfikator klienta serwera na potrzeby uwierzytelniania backendu lub zoptymalizować aplikację pod kątem domeny Google Workspace.

Dodaj identyfikator klienta OAuth i niestandardowy schemat adresu URL

Zaktualizuj plik Info.plist aplikacji, aby dodać identyfikator klienta OAuth i niestandardowy schemat adresu URL na podstawie odwrotnego identyfikatora klienta.

Odwrócony identyfikator klienta to Twój identyfikator klienta w odwrotnej kolejności, w polach oddzielonych kropkami. Ta informacja wyświetla się również w sekcji „Schemat adresu URL na iOS” podczas wybierania istniejącego klienta OAuth na iOS w konsoli Google Cloud. Na przykład: 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>

Opcjonalnie: skonfiguruj uwierzytelnianie backendu

Jeśli chcesz uzyskać tokeny identyfikatorów użytkowników na potrzeby uwierzytelniania backendu, ustaw też klucz GIDServerClientID w pliku Info.plist aplikacji.

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

Opcjonalnie: optymalizacja pod kątem domeny Google Workspace lub obszaru OpenID

Jeśli chcesz zoptymalizować proces logowania dla domeny Google Workspace, użyj parametru GIDHostedDomain.

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

Jeśli chcesz określić obszar OpenID, użyj parametru GIDOpenIDRealm.

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

Podpisywanie aplikacji

Aby można było przechowywać dane logowania za pomocą pęku kluczy, aplikacja musi być podpisana certyfikatem wydanym przez Apple na urządzeniach z macOS i iOS.

Dalsze kroki

Po pobraniu zależności projektu i skonfigurowaniu projektu Xcode możesz dodać do aplikacji Logowanie przez Google w aplikacji na iOS.