iOS veya macOS uygulamanızı Google ile oturum açma bileşenleriyle entegre etmeye başlamadan önce bağımlılıkları indirmeniz ve Xcode projenizi yapılandırmanız gerekir. Bu sayfada yer alan adımlarla bunu yapabilirsiniz. Ardından, sonraki adımlarda Google ile oturum açma özelliklerinin uygulamanıza nasıl entegre edileceği açıklanmaktadır.
Başlamadan önce
Xcode'un güncel bir sürümünü yükleyin.
Google ile oturum açma bağımlılıklarını projenize yükleme
CocoaPods
CocoaPods yüklü değilse CocoaPods Başlangıç kılavuzundaki adımları uygulayın.
Bir terminal penceresi açın ve uygulamanızın Xcode projesinin konumuna gidin.
Uygulamanız için henüz bir Podfile oluşturmadıysanız hemen bir tane oluşturun:
pod init
Uygulamanız için oluşturulan Podfile dosyasını açın ve aşağıdakileri ekleyin:
pod 'GoogleSignIn'
SwiftUI kullanıyorsanız "Google ile oturum aç" düğmesi için kapsül uzantısını da ekleyin:
pod 'GoogleSignInSwiftSupport'
Dosyayı kaydedin ve şunu çalıştırın:
pod install
Xcode'da uygulamanız için oluşturulan
.xcworkspace
çalışma alanı dosyasını açın. Bu dosyayı uygulamanızda ileride yapılacak tüm geliştirmeler için kullanın. (Bunun, dahil edilen.xcodeproj
proje dosyasından farklı olduğunu unutmayın. Bu dosya açıldığında derleme hatalarına neden olur.)Örnek olarak Objective-C örnek uygulamasının Podfile dosyasını inceleyebilirsiniz.
Swift Package Manager
Projenizi Xcode'da açın.
Google ile oturum açma bağımlılarını uygulamanıza ekleyin (Xcode dokümanları):
Depo https://github.com/google/GoogleSignIn-iOS
Sürüm 7.0.0 Ürünü paketleme GoogleSignIn SwiftUI kullanıyorsanız "Google ile oturum aç" düğmesi için aşağıdaki uzantı paketi ürününü de ekleyin:
Ürünü paketleme GoogleSignInSwift
OAuth istemci kimliği alma
Uygulamanızın, Google'ın kimlik doğrulama arka ucuna kimliğini tanımlamak için bir OAuth istemci kimliğine ihtiyacı vardır. iOS ve macOS uygulamaları için OAuth istemci kimliği uygulama türü iOS olarak yapılandırılmalıdır.
Henüz OAuth istemci kimliği oluşturmadıysanız aşağıdaki düğmeyi tıklayarak oluşturabilirsiniz.
OAuth istemci kimliği oluşturma
OAuth istemci kimliğini oluşturduktan sonra, uygulamanızda Google ile oturum açma özelliğini yapılandırmak için kullanacağınız istemci kimliği dizesini not edin. İsterseniz istemci kimliğinizi ve diğer yapılandırma verilerini içeren yapılandırma dosyasını indirerek ileride referans olarak kullanabilirsiniz.
Daha önce bir OAuth istemci kimliği oluşturduysanız aşağıdaki düğmeyi tıklayarak mevcut OAuth bilgilerinizi bulabilirsiniz.
Mevcut bir OAuth istemci kimliği alma
OAuth sunucu istemci kimliği alma
Çoğu uygulamanın, oturum açmış kullanıcıların kimliğini bir tür arka uç hizmetine iletmesi gerekir. Google ile oturum açan kullanıcıların kimliğini arka ucunuza güvenli bir şekilde iletmek için Arka uç sunucusuyla kimlik doğrulama bölümünde açıklandığı gibi kimlik jetonlarını kullanırsınız. Kullanıcının kimlik jetonunu almak için arka uç sunucunuzu temsil eden ikinci bir istemci kimliği (sunucu istemci kimliğiniz) gerekir.
Sunucu istemci kimliği oluşturmak için:
Projenizi Cloud Console'da açın.
Yeni bir Web uygulaması türü OAuth istemci kimliği oluşturun. Uygulamanızda Google ile oturum açma özelliğini yapılandırmak için kullanacağınız istemci kimliği dizesini not edin.
Uygulama projenizi yapılandırma
Google ile oturum açma özelliği, projenizin OAuth istemci kimliğiniz ve özel bir URL şemasıyla yapılandırılmasını gerektirir. İsteğe bağlı olarak, arka uç kimlik doğrulaması için sunucu istemci kimliğinizi de ekleyebilir veya uygulamanızı Google Workspace alanınız için optimize edebilirsiniz.
OAuth istemci kimliğinizi ve özel URL şemanızı ekleme
Uygulamanızın Info.plist
dosyasını güncelleyerek OAuth istemci kimliğinizi ve ters çevrilmiş istemci kimliğine dayalı özel bir URL şeması ekleyin.
Ters çevrilmiş müşteri kimliği, noktayla ayrılmış alanların sırasının tersine çevrildiği müşteri kimliğinizdir. Bu, Cloud Console'da mevcut bir iOS OAuth istemcisi seçerken "iOS URL şeması" bölümünde de gösterilir. Örneğin:
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>
İsteğe bağlı: Arka uç kimlik doğrulamasını yapılandırma
Arka uç kimlik doğrulaması için kullanıcıların kimlik jetonlarını almanız gerekiyorsa uygulamanızın Info.plist
dosyasında GIDServerClientID
anahtarını da ayarlayın.
<key>GIDServerClientID</key> <string>YOUR_SERVER_CLIENT_ID</string>
İsteğe bağlı: Google Workspace alanı veya OpenID alanı için optimize etme
Bir Google Workspace alanı için oturum açma akışını optimize etmek istiyorsanız GIDHostedDomain
parametresini kullanın.
<key>GIDHostedDomain</key> <string>YOUR_HOSTED_DOMAIN</string>
OpenID alanı belirtmek istiyorsanız GIDOpenIDRealm
parametresini kullanın.
<key>GIDOpenIDRealm</key> <string>YOUR_OPENID_REALM</string>
Uygulamanızı imzalama
Uygulamanız, kimlik bilgilerini anahtar zinciri üzerinden depolamak için macOS ve iOS cihazlarda yerel olarak çalışacak şekilde Apple tarafından verilen bir sertifikayla imzalanmış olmalıdır.
Sonraki adımlar
Proje bağımlılıkları indirip Xcode projenizi yapılandırdığınıza göre iOS uygulamanıza Google ile oturum açma özelliğini ekleyebilirsiniz.