iOS ve macOS için Google ile Oturum Açma özelliğini kullanmaya başlama

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

  1. CocoaPods yüklü değilse CocoaPods Başlangıç kılavuzundaki adımları uygulayın.

  2. Bir terminal penceresi açın ve uygulamanızın Xcode projesinin konumuna gidin.

  3. Uygulamanız için henüz bir Podfile oluşturmadıysanız hemen bir tane oluşturun:

    pod init

  4. Uygulamanız için oluşturulan Podfile dosyasını açın ve aşağıdakileri ekleyin:

    pod 'GoogleSignIn'

  5. SwiftUI kullanıyorsanız "Google ile oturum aç" düğmesi için kapsül uzantısını da ekleyin:

    pod 'GoogleSignInSwiftSupport'

  6. Dosyayı kaydedin ve şunu çalıştırın:

    pod install

  7. 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

  1. Projenizi Xcode'da açın.

  2. 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
  3. 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:

  1. Projenizi Cloud Console'da açın.

  2. 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.