Twitter ile Oturum Açma'yı uygulamanıza entegre ederek, kullanıcılarınızın Twitter 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
- Bir OAuth erişim jetonu ve OAuth sırrı almak için Twitter ile Oturum Açma talimatlarını uygulayın.
- Bir kullanıcı başarıyla oturum açtıktan sonra, erişim jetonunu bir Firebase kimlik bilgisiyle değiştirin ve Firebase kimlik bilgilerini kullanarak Firebase ile kimlik doğrulayın:
Firebase.Auth.Credential credential = Firebase.Auth.TwitterAuthProvider.GetCredential(accessToken, secret); 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ğiniauth
değişkeninden alabilir ve bir kullanıcının hangi verilere erişebileceğini kontrol etmek için kullanabilirsiniz.
Kimlik doğrulama 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();