Google is committed to advancing racial equity for Black communities. See how.
Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

Facebook Oturum Açma ve Unity Kullanarak Kimlik Doğrulama

Facebook Oturumunu uygulamanıza entegre ederek, kullanıcılarınızın Facebook hesaplarını kullanarak Firebase ile kimlik doğrulamasına izin verebilirsiniz.

Sen başlamadan önce

Firebase Authentication'ı kullanmadan önce şunları yapmanız gerekir:

  • Unity projenizi kaydedin ve Firebase'i kullanacak şekilde yapılandırın.

    • Unity projeniz zaten Firebase kullanıyorsa, zaten kaydedilmiş ve Firebase için yapılandırılmıştır.

    • Bir Unity projeniz yoksa, örnek bir uygulama indirebilirsiniz.

  • Firebase Unity SDK'sını (özellikle FirebaseAuth.unitypackage ) Unity projenize ekleyin.

Unity projenize Firebase eklemenin hem Firebase konsolunda hem de açık Unity projenizde görevler içerdiğini unutmayın (örneğin, Firebase yapılandırma dosyalarını konsoldan indirir, ardından bunları Unity projenize taşırsınız).

Firebase.Auth.FirebaseAuth sınıfına erişin

FirebaseAuth sınıfı, tüm API çağrıları için ağ geçididir. Bu ulaşılabiliyor FirebaseAuth.DefaultInstance .
Firebase.Auth.FirebaseAuth auth = Firebase.Auth.FirebaseAuth.DefaultInstance;

Firebase ile kimlik doğrulayın

  1. Oturum açan Facebook kullanıcısı için bir erişim belirteci almak üzere Android ve iOS için talimatları izleyin.
  2. Bir kullanıcı başarıyla oturum açtıktan sonra, erişim jetonunu bir Firebase kimlik bilgisi ile değiştirin ve Firebase kimlik bilgilerini kullanarak Firebase ile kimlik doğrulayın:
    Firebase.Auth.Credential credential =
        Firebase.Auth.FacebookAuthProvider.GetCredential(accessToken);
    auth.SignInWithCredentialAsync(credential).ContinueWith(task => {
      if (task.IsCanceled) {
        Debug.LogError("SignInWithCredentialAsync was canceled.");
        return;
      }
      if (task.IsFaulted) {
        Debug.LogError("SignInWithCredentialAsync encountered an error: " + task.Exception);
        return;
      }
    
      Firebase.Auth.FirebaseUser newUser = task.Result;
      Debug.LogFormat("User signed in successfully: {0} ({1})",
          newUser.DisplayName, newUser.UserId);
    });
    

Sonraki adımlar

Bir kullanıcı ilk kez oturum açtıktan sonra, yeni bir kullanıcı hesabı oluşturulur ve oturum açan kullanıcı kimlik bilgilerine (yani kullanıcı adı ve parolası, telefon numarası veya kimlik doğrulama sağlayıcı bilgileri) bağlanır. Bu yeni hesap, Firebase projenizin bir parçası olarak depolanır ve kullanıcının nasıl oturum açtığına bakılmaksızın projenizdeki her uygulamada bir kullanıcıyı tanımlamak için kullanılabilir.

  • Uygulamalarınızda, kullanıcının temel profil bilgilerini Firebase.Auth.FirebaseUser nesnesinden alabilirsiniz:

    Firebase.Auth.FirebaseUser user = auth.CurrentUser;
    if (user != null) {
      string name = user.DisplayName;
      string email = user.Email;
      System.Uri photo_url = user.PhotoUrl;
      // The user's Id, unique to the Firebase project.
      // Do NOT use this value to authenticate with your backend server, if you
      // have one; use User.TokenAsync() instead.
      string uid = user.UserId;
    }
    
  • Firebase Realtime Database ve Cloud Storage Güvenlik Kurallarınızda , oturum auth kullanıcının benzersiz kullanıcı kimliğini auth değişkeninden alabilir ve bir kullanıcının hangi verilere erişebileceğini kontrol etmek için kullanabilirsiniz.

Yetkilendirme sağlayıcı kimlik bilgilerini mevcut bir kullanıcı hesabına bağlayarak , kullanıcıların birden çok kimlik doğrulama sağlayıcısı kullanarak uygulamanızda oturum açmasına izin verebilirsiniz .

Bir kullanıcının oturumunu kapatmak için SignOut() arayın:

auth.SignOut();