Google is committed to advancing racial equity for Black communities. See how.
ترجمت واجهة Cloud Translation API‏ هذه الصفحة.
Switch to English

المصادقة باستخدام GitHub و Unity

يمكنك السماح للمستخدمين بالمصادقة مع Firebase باستخدام حساباتهم على GitHub من خلال دمج مصادقة GitHub في تطبيقك.

قبل ان تبدأ

قبل أن تتمكن من استخدام مصادقة Firebase ، تحتاج إلى:

  • سجل مشروع الوحدة الخاص بك وقم بتكوينه لاستخدام Firebase.

    • إذا كان مشروع الوحدة الخاص بك يستخدم Firebase بالفعل ، فهذا يعني أنه تم تسجيله وتهيئته بالفعل لـ Firebase.

    • إذا لم يكن لديك مشروع Unity ، فيمكنك تنزيل نموذج للتطبيق .

  • أضف Firebase Unity SDK (على وجه التحديد ، FirebaseAuth.unitypackage ) إلى مشروع Unity الخاص بك.

لاحظ أن إضافة Firebase إلى مشروع Unity الخاص بك يتضمن مهامًا في كل من وحدة تحكم Firebase وفي مشروع Unity المفتوح (على سبيل المثال ، يمكنك تنزيل ملفات تهيئة Firebase من وحدة التحكم ، ثم نقلها إلى مشروع الوحدة الخاص بك).

قم بالوصول إلى فئة Firebase.Auth

فئة FirebaseAuth هي البوابة لجميع استدعاءات API. يمكن الوصول إليه من خلال FirebaseAuth.DefaultInstance .
Firebase.Auth.FirebaseAuth auth = Firebase.Auth.FirebaseAuth.DefaultInstance;

مصادقة مع Firebase

  1. اتبع التعليمات لنظامي التشغيل Android و iOS للحصول على رمز مميز لمستخدم GitHub الذي قام بتسجيل الدخول.
  2. بعد نجاح المستخدم في تسجيل الدخول ، قم بتبديل رمز الوصول الخاص ببيانات اعتماد Firebase ، والمصادقة مع Firebase باستخدام بيانات اعتماد Firebase:
    Firebase.Auth.Credential credential =
        Firebase.Auth.GitHubAuthProvider.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);
    });
    

الخطوات التالية

بعد قيام المستخدم بتسجيل الدخول لأول مرة ، يتم إنشاء حساب مستخدم جديد وربطه ببيانات الاعتماد - أي اسم المستخدم وكلمة المرور أو رقم الهاتف أو معلومات موفر المصادقة - المستخدم الذي قام بتسجيل الدخول باستخدام. يتم تخزين هذا الحساب الجديد كجزء من مشروع Firebase الخاص بك ، ويمكن استخدامه لتحديد هوية مستخدم عبر كل تطبيق في مشروعك ، بغض النظر عن كيفية تسجيل المستخدم للدخول.

  • في تطبيقاتك ، يمكنك الحصول على معلومات الملف الشخصي الأساسية للمستخدم من Firebase.Auth.FirebaseUser object:

    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 وقواعد أمان التخزين السحابي ، يمكنك الحصول على معرف المستخدم الفريد للمستخدم الذي قام بتسجيل الدخول من متغير auth ، واستخدامه للتحكم في البيانات التي يمكن للمستخدم الوصول إليها.

يمكنك السماح للمستخدمين بتسجيل الدخول إلى تطبيقك باستخدام موفري مصادقة متعددين عن طريق ربط بيانات اعتماد موفر المصادقة بحساب مستخدم حالي.

لتسجيل خروج مستخدم ، اتصل بـ SignOut() :

auth.SignOut();