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
Jeśli nie masz jeszcze zainstalowanego CocoaPods, wykonaj czynności opisane w przewodniku CocoaPods.
Otwórz okno terminala i przejdź do lokalizacji projektu Xcode Twojej aplikacji.
Jeśli nie masz jeszcze utworzonego pliku Podfile dla aplikacji, utwórz go teraz:
pod init
Otwórz plik Podfile utworzony dla Twojej aplikacji i dodaj:
pod 'GoogleSignIn'
Jeśli używasz SwiftUI, dodaj też rozszerzenie poda dla przycisku „Sign in with Google” (Zaloguj się przez Google):
pod 'GoogleSignInSwiftSupport'
Zapisz plik i uruchom:
pod install
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
Otwórz projekt w Xcode.
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 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:
Otwórz projekt w konsoli Google Cloud.
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.