تم إصدار أحدث إصدار من Google Identity Toolkit باسم مصادقة Firebase. واعتبارًا من الآن، سيتم تجميد العمل على ميزات Identity Toolkit، وسيتم تطوير جميع الميزات الجديدة في مصادقة Firebase. ننصح مطوّري Identity Toolkit بالانتقال إلى مصادقة Firebase في أقرب وقت ممكن لتطبيقاتهم، ولكن سيستمر عمل Identity Toolkit ولن يتم إيقافه نهائيًا بدون إشعار آخر.
ميزات جديدة
تتضمّن مصادقة Firebase بعض التحسينات الكبيرة في الميزات مقارنةً بـ Google Identity Toolkit:
الوصول إلى جميع ميزات Firebase
Firebase هو نظام أساسي للجوّال يساعد على التطوير السريع للتطبيقات عالية الجودة وزيادة قاعدة المستخدمين وربح المزيد من الأموال. يتكوّن Firebase من ميزات تكميلية يمكنك دمجها ومطابقتها لتناسب احتياجاتك، و يتضمّن البنية الأساسية لما يلي: إحصاءات الأجهزة الجوّالة ، والمراسلة عبر السحابة الإلكترونية، وقاعدة البيانات في الوقت الفعلي، وتخزين الملفات، والاستضافة الثابتة، والإعداد عن بُعد، والإبلاغ عن الأعطال على الأجهزة الجوّالة و اختبار Android .
واجهات مستخدم معدَّلة
أعدنا بناء مسارات واجهة المستخدم بالكامل استنادًا إلى أحدث أبحاث تجربة المستخدم من Google. ويشمل ذلك استرداد كلمة المرور، وربط الحساب، ومسارات التمييز بين الحسابات الجديدة والحالية التي تستغرق غالبًا وقتًا طويلاً في كتابة الرموز البرمجية وتصحيح الأخطاء. يتكامل مع Smart Lock لكلمات المرور على Android، ما أدّى إلى تحسين كبير في معدّل الإحالات الناجحة لتسجيل الدخول والاشتراك في التطبيقات المشارِكة. ويتيح أيضًا إجراء تعديلات سهلة على المظهر ليناسب تطبيقك، ولتحقيق أقصى قدر من التخصيص، تم فتح مصدر الإصدارَين لنظامَي التشغيل Android وiOS.
إعداد الخادم بشكلٍ مبسّط
لقد سهّلنا على المطوّرين استخدام مصادقة Firebase. في Identity Toolkit، لاحظنا أنّ العديد من المطوّرين اختاروا عدم تنفيذ مسار استرداد البريد الإلكتروني، ما جعل من المستحيل على المستخدمين استرداد حساباتهم إذا نسوا كلمة المرور. يمكن لمصادقة Firebase إرسال رسائل تأكيد عنوان البريد الإلكتروني وإعادة ضبط كلمة المرور وتغيير كلمة المرور إلى المستخدم، ويمكن تخصيص النص بسهولة ليناسب المستخدمين. بالإضافة إلى ذلك، لم تعُد بحاجة إلى استضافة الـ UI widgets لاستضافة عمليات إعادة التوجيه و إكمال عمليات تغيير كلمة المرور.
وحدة تحكّم جديدة للمشرف
يتضمّن Firebase وحدة تحكّم جديدة للمطوّرين، ويسمح لك قسم "المصادقة" بعرض المستخدمين وتعديلهم وحذفهم. يمكن أن يساعد ذلك بشكلٍ كبير في تصحيح أخطاء مسارات تسجيل الدخول والاشتراك. تسمح لك وحدة التحكّم أيضًا بضبط طرق المصادقة وتخصيص نماذج الرسائل الإلكترونية.
حِزم SDK جديدة
تتوفّر الآن جميع واجهات برمجة التطبيقات للخادم في Identity Toolkit بشكلٍ أصلي مع كلّ من مكتبات العملاء (Android وiOS والويب). سيتمكّن المطوّرون من تسجيل الدخول والاشتراك للمستخدمين القدامى والجدد، والوصول إلى خصائص المستخدم، وربط الحسابات وتعديلها وحذفها، وإعادة ضبط كلمات المرور، وغير ذلك بدون أن يكونوا مرتبطين بواجهة مستخدم ثابتة. إذا كنت تفضّل ذلك، يمكنك إنشاء مسار تجربة تسجيل الدخول بالكامل يدويًا استنادًا إلى واجهة برمجة التطبيقات هذه.
إدارة الجلسات للتطبيقات على الأجهزة الجوّالة
باستخدام Identity Toolkit، أنشأت التطبيقات حالة الجلسة الخاصة بها استنادًا إلى حدث المصادقة الأولي من Identity Toolkit. يستخدم Firebase Auth خدمة خلفية تأخذ رمزًا مميزًا لإعادة التحميل، تم إنشاؤه من حدث المصادقة، وتستبدله برموز مميزة للوصول لمدة ساعة واحدة لنظامَي التشغيل Android وiOS وJavaScript. عندما يغيّر المستخدم كلمة المرور، لن تتمكّن رموز إعادة التحميل من إنشاء رموز مميزة جديدة للوصول، ما يؤدي إلى إيقاف الوصول إلى أن يعيد المستخدم المصادقة على هذا الجهاز.
المصادقة المجهولة ومصادقة GitHub
تتيح مصادقة Firebase نوعَين جديدَين من المصادقة: GitHub والمصادقة المجهولة. يمكن استخدام تسجيل الدخول المجهول لإنشاء رقم تعريف مستخدم فريد بدون أن يُطلب من المستخدم إجراء أي عملية تسجيل دخول أو اشتراك. باستخدام مستخدم مجهول الهوية، يمكنك الآن إجراء طلبات واجهة برمجة التطبيقات المصادقة، كما تفعل مع مستخدم عادي. عندما يقرّر المستخدم الاشتراك في حساب، يتم الاحتفاظ بجميع الأنشطة باستخدام رقم تعريف المستخدم نفسه. هذا مفيد في حالات مثل سلّة التسوّق من جهة الخادم أو أي تطبيق تريد فيه جذب المستخدم قبل إرساله خلال مسار الاشتراك.
الاختلافات في الميزات
لا تتوفّر حاليًا بعض ميزات Identity Toolkit في Firebase Authentication، بينما تم إعادة تصميم ميزات أخرى وتعمل بشكلٍ مختلف. قد تختار عدم نقل البيانات على الفور إذا كانت هذه الميزات مهمة لتطبيقك. في كثير من الحالات، قد لا تكون هذه الميزات مهمة لتطبيقك أو قد تكون هناك حلول احتياطية سهلة ستسمح لك بمتابعة عملية نقل البيانات.
الاختلافات من جهة الخادم
لم تخضع خدمة Identity Toolkit الأساسية مع واجهات برمجة تطبيقات REST الأساسية ومنطق التحقّق من صحة الحساب وقاعدة بيانات المستخدم الأساسية إلا لتعديلات طفيفة. ولكن تغيّرت بعض الميزات وطريقة دمج مصادقة Firebase في خدمتك.
موفّرو الهوية
لا تتوفّر خدمات PayPal وAOL. سيظل بإمكان المستخدمين الذين لديهم حسابات من موفّري الهوية هؤلاء تسجيل الدخول إلى تطبيقك باستخدام مسار استرداد كلمة المرور وإعداد كلمة مرور لحساباتهم.
مكتبات الخادم
تتوفّر حاليًا حِزم Firebase Admin SDK للغات Java وNode.js وPython وGo وC#.
الرسائل الإلكترونية لإدارة الحساب
يمكن لـ Firebase أو خادم البريد الخاص بالمطوّر إجراء عمليات إعادة ضبط كلمة المرور وتأكيد عنوان البريد الإلكتروني وتغيير الرسائل الإلكترونية. لا تقدّم نماذج الرسائل الإلكترونية في Firebase حاليًا سوى خيارات تخصيص محدودة.
تأكيد تغيير عنوان البريد الإلكتروني
في Identity Toolkit، عندما يقرّر المستخدم تغيير عنوان بريده الإلكتروني، يتم إرسال رسالة إلكترونية إلى العنوان الجديد تتضمّن رابطًا لمتابعة مسار تغيير عنوان البريد الإلكتروني.
يؤكّد Firebase تغيير عنوان البريد الإلكتروني عن طريق إرسال رسالة إلكترونية لإبطال العنوان القديم تتضمّن رابطًا للتراجع عن التغيير.
طرح موفّري الهوية
كان لدى Identity Toolkit إمكانية إضافة موفّري الهوية إلى نظام تسجيل الدخول تدريجيًا، ما يسمح لك بتجربة التأثير في طلبات الدعم. تمت إزالة هذه الميزة في مصادقة Firebase.
الاختلافات من جهة العميل
في Firebase، يتم تقسيم الميزات التي يقدّمها Google Identity Toolkit إلى مكوّنَين:
حِزم SDK لمصادقة Firebase
في Firebase Authentication، تم تجميع الوظائف التي توفّرها واجهة برمجة تطبيقات REST في Identity Toolkit في حِزم SDK للعميل متوفّرة لنظامَي التشغيل Android وiOS وJavaScript. يمكنك استخدام حزمة SDK لتسجيل الدخول والاشتراك للمستخدمين، والوصول إلى معلومات الملف الشخصي للمستخدم، وربط الحسابات وتعديلها وحذفها، وإعادة ضبط كلمات المرور باستخدام حزمة SDK للعميل بدلاً من التواصل مع خدمة الخلفية من خلال طلبات REST.
FirebaseUI Auth
تمت إعادة بناء جميع مسارات واجهة المستخدم التي تدير تسجيل الدخول والاشتراك واسترداد كلمة المرور وربط الحساب باستخدام حِزم Firebase Authentication SDK. تتوفّر هذه المسارات كحِزم SDK مفتوحة المصدر لنظامَي التشغيل iOS وAndroid لتتيح لك تخصيص المسارات بالكامل بطرق غير ممكنة باستخدام Identity Toolkit.
تشمل الاختلافات الإضافية ما يلي:
الجلسات ونقل البيانات
بما أنّ الجلسات تتم إدارتها بشكلٍ مختلف في Identity Toolkit وFirebase Authentication، سيتم إنهاء الجلسات الحالية للمستخدمين عند ترقية حزمة SDK، وسيتعيّن على المستخدمين تسجيل الدخول مرة أخرى.
قبل البدء
قبل أن تتمكّن من نقل البيانات من Identity Toolkit إلى مصادقة Firebase، عليك إجراء ما يلي:
افتح وحدة تحكّم Firebase، وانقر على استيراد مشروع Google، واختَر مشروع Identity Toolkit.
انقر على settings > الأذونات لفتح صفحة "إدارة الهوية والوصول والمشرف".
افتح صفحة حسابات الخدمة. يمكنك هنا الاطّلاع على حساب الخدمة الذي سبق لك ضبطه لـ Identity Toolkit.
بجانب حساب الخدمة، انقر على more_vert > إنشاء مفتاح. بعد ذلك، في مربّع الحوار إنشاء مفتاح خاص ، اضبط "نوع المفتاح" على JSON وانقر على إنشاء. يتم تنزيل ملف JSON يحتوي على بيانات اعتماد حساب الخدمة. ستحتاج إلى هذا الملف لتهيئة حزمة SDK في الخطوة التالية.
ارجع إلى "وحدة تحكّم Firebase". في قسم "المصادقة"، افتح صفحة نماذج الرسائل الإلكترونية. في هذه الصفحة، خصِّص نماذج الرسائل الإلكترونية لتطبيقك.
في Identity Toolkit، عندما يعيد المستخدمون ضبط كلمات المرور ويغيّرون عناوين البريد الإلكتروني ويؤكّدون عناوين بريدهم الإلكترونية، كان عليك الحصول على رمز OOB من خادم Identity Toolkit، ثم إرسال الرمز إلى المستخدمين عبر البريد الإلكتروني. يرسل Firebase رسائل إلكترونية استنادًا إلى النماذج التي تضبطها بدون الحاجة إلى اتخاذ أي إجراءات إضافية.
اختياري: إذا كنت بحاجة إلى الوصول إلى خدمات Firebase على خادمك، ثبِّت حزمة Firebase SDK.
يمكنك تثبيت وحدة Firebase Node.js باستخدام
npm:$ npm init $ npm install --save firebase-adminفي الرمز البرمجي، يمكنك الوصول إلى Firebase باستخدام:
var admin = require('firebase-admin'); var app = admin.initializeApp({ credential: admin.credential.cert('path/to/serviceAccountCredentials.json') });
بعد ذلك، أكمل خطوات نقل البيانات للنظام الأساسي لتطبيقك: Android، iOS، الويب.
الخوادم وJavaScript
التغييرات البارزة
هناك عدد من الاختلافات الإضافية في تنفيذ الويب لمنصة Firebase مقارنةً بـ Identity Toolkit.
إدارة جلسات الويب
في السابق، عندما كان المستخدم يصادق باستخدام أداة Identity Toolkit، يتم ضبط ملف تعريف ارتباط للمستخدم كان يُستخدم لـ تهيئة الجلسة. كانت مدة صلاحية ملف تعريف الارتباط هذا أسبوعَين، وكان يُستخدم للسماح للمستخدم باستخدام أداة إدارة الحساب لتغيير كلمة المرور وعنوان البريد الإلكتروني. استخدمت بعض المواقع الإلكترونية ملف تعريف الارتباط هذا لمصادقة جميع طلبات الصفحات الأخرى على الموقع الإلكتروني. استخدمت مواقع إلكترونية أخرى ملف تعريف الارتباط لإنشاء ملفات تعريف الارتباط الخاصة بها من خلال نظام إدارة ملفات تعريف الارتباط في إطار العمل.
تُدير الآن حِزم Firebase SDK للعميل رموز تعريف Firebase وتعمل مع الخلفية في Firebase Authentication للحفاظ على الجلسة محدّثة. تنهي الخلفية الجلسات عند حدوث تغييرات مهمة في الحساب (مثل تغييرات كلمة مرور المستخدم). لا يتم ضبط رموز تعريف Firebase تلقائيًا كملفات تعريف ارتباط على عميل الويب، ولا تزيد مدة صلاحيتها عن ساعة واحدة. ما لم تكن تريد جلسات لمدة ساعة واحدة فقط، فإنّ رموز تعريف Firebase غير مناسبة لاستخدامها كملف تعريف ارتباط للتحقّق من صحة جميع طلبات صفحتك. بدلاً من ذلك، عليك إعداد مستمع عند تسجيل دخول المستخدم، الحصول على رمز تعريف Firebase، والتحقّق من صحة الرمز، وإنشاء ملف تعريف ارتباط خاص بك من خلال نظام إدارة ملفات تعريف الارتباط في إطار العمل.
عليك ضبط مدة صلاحية ملف تعريف الارتباط استنادًا إلى احتياجات الأمان في تطبيقك.
مسار تسجيل الدخول إلى الويب
في السابق، كان يتم إعادة توجيه المستخدمين إلى
accountchooser.comعند بدء تسجيل الدخول لمعرفة المعرّف الذي أراد المستخدم استخدامه. يبدأ مسار واجهة مستخدم Firebase Auth الآن بقائمة طرق تسجيل الدخول، بما في ذلك خيار البريد الإلكتروني الذي ينتقل إلىaccountchooser.comللويب ويستخدم واجهة برمجة التطبيقات hintRequest على Android. بالإضافة إلى ذلك، لم تعُد عناوين البريد الإلكتروني مطلوبة في واجهة مستخدم Firebase. سيؤدي ذلك إلى تسهيل دعم المستخدمين المجهولين أو المستخدمين الذين يستخدمون المصادقة المخصّصة أو المستخدمين من موفّري الخدمات الذين لا يطلبون عناوين البريد الإلكتروني.أداة إدارة الحساب
توفّر هذه الأداة واجهة مستخدم للمستخدمين لتغيير عناوين البريد الإلكتروني أو تغيير كلمات المرور أو إلغاء ربط حساباتهم بموفّري الهوية. وهي قيد التطوير حاليًا.
زر/أداة تسجيل الدخول
لم تعُد تتوفّر الأدوات، مثل زر تسجيل الدخول وبطاقة المستخدم. يمكن إنشاؤها بسهولة باستخدام Firebase Authentication API.
لا يتوفّر signOutUrl
عليك استدعاء
firebase.auth.signOut()والتعامل مع معاودة الاتصال.لا يتوفّر oobActionUrl
يتولّى Firebase الآن إرسال الرسائل الإلكترونية ويتم ضبطه في "وحدة تحكّم Firebase".
تخصيص CSS
تستخدم FirebaseUI تصميم Material Design Lite، الذي يضيف ديناميكيًا رسومًا متحركة من التصميم المتعدد الأبعاد.
الخطوة 1: تغيير رمز الخادم
إذا كان خادمك يعتمد على رمز Identity Toolkit (صالح لمدة أسبوعَين) لإدارة جلسات مستخدمي الويب، عليك تحويل الخادم لاستخدام ملف تعريف ارتباط الجلسة الخاص به.
- نفِّذ نقطة نهاية لـ التحقّق من صحة رمز تعريف Firebase وضبط ملف تعريف ارتباط الجلسة للمستخدم. يرسل تطبيق العميل رمز تعريف Firebase إلى نقطة النهاية هذه.
- إذا كان الطلب الوارد يحتوي على ملف تعريف ارتباط الجلسة الخاص بك، يمكنك اعتبار المستخدم مصادقًا. وإلا، تعامَل مع الطلب على أنّه غير مصادق.
- إذا كنت لا تريد أن يفقد أي من المستخدمين جلسات تسجيل الدخول الحالية، عليك الانتظار لمدة أسبوعَين حتى تنتهي صلاحية جميع رموز Identity Toolkit، أو إجراء عملية التحقّق من صحة الرمز المزدوج لتطبيق الويب كما هو موضّح أدناه في الخطوة 3.
بعد ذلك، بما أنّ رموز Firebase تختلف عن رموز Identity Toolkit، عليك تعديل منطق التحقّق من صحة الرمز. ثبِّت Firebase Server SDK على خادمك، أو إذا كنت تستخدم لغة غير متوافقة مع Firebase Server SDK، نزِّل مكتبة التحقّق من صحة رمز JWT لبيئتك وتحقّق من صحة الرمز بشكلٍ صحيح.
عند إجراء التعديلات أعلاه لأول مرة، قد تظل لديك مسارات رموز برمجية تعتمد على رموز Identity Toolkit. إذا كان لديك تطبيقات iOS أو Android، على المستخدمين ترقية التطبيق إلى الإصدار الجديد لكي تعمل مسارات الرموز البرمجية الجديدة. إذا كنت لا تريد إجبار المستخدمين على تحديث تطبيقك، يمكنك إضافة منطق تحقّق إضافي من جهة الخادم يفحص الرمز ويحدّد ما إذا كان بحاجة إلى استخدام Firebase SDK أو Identity Toolkit SDK للتحقّق من صحة الرمز. إذا كان لديك تطبيق ويب فقط، سيتم نقل جميع طلبات المصادقة الجديدة إلى Firebase، وبالتالي، عليك استخدام طرق التحقّق من صحة رمز Firebase فقط.
يمكنك الاطّلاع على مرجع Firebase Web API.
الخطوة 2: تعديل HTML
أضِف رمز تهيئة Firebase إلى تطبيقك:
- افتح مشروعك في "وحدة تحكّم Firebase".
- في صفحة "نظرة عامة"، انقر على إضافة تطبيق، ثم انقر على إضافة Firebase إلى تطبيق الويب. يتم عرض مقتطف رمز يهيّئ Firebase.
- انسخ مقتطف التهيئة والصقه في صفحة الويب.
أضِف FirebaseUI Auth إلى تطبيقك:
<script src="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.js"></script> <link type="text/css" rel="stylesheet" href="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.css" /> <!-- ******************************************************************************************* * TODO(DEVELOPER): Paste the initialization snippet from: * Firebase Console > Overview > Add Firebase to your web app. * ***************************************************************************************** --> <script type="text/javascript"> // FirebaseUI config. var uiConfig = { 'signInSuccessUrl': '<url-to-redirect-to-on-success>', 'signInOptions': [ // Leave the lines as is for the providers you want to offer your users. firebase.auth.GoogleAuthProvider.PROVIDER_ID, firebase.auth.FacebookAuthProvider.PROVIDER_ID, firebase.auth.TwitterAuthProvider.PROVIDER_ID, firebase.auth.GithubAuthProvider.PROVIDER_ID, firebase.auth.EmailAuthProvider.PROVIDER_ID ], // Terms of service url. 'tosUrl': '<your-tos-url>', }; // Initialize the FirebaseUI Widget using Firebase. var ui = new firebaseui.auth.AuthUI(firebase.auth()); // The start method will wait until the DOM is loaded. ui.start('#firebaseui-auth-container', uiConfig); </script>أزِل Identity Toolkit SDK من تطبيقك.
إذا كنت تعتمد على رمز تعريف Identity Toolkit لإدارة الجلسة، عليك إجراء التغييرات التالية من جهة العميل:
بعد تسجيل الدخول بنجاح باستخدام Firebase، احصل على رمز تعريف Firebase عن طريق استدعاء
firebase.auth().currentUser.getToken().أرسِل رمز تعريف Firebase إلى خادم الخلفية، وتحقّق من صحته، وأنشئ ملف تعريف ارتباط الجلسة الخاص بك.
لا تعتمد فقط على ملف تعريف ارتباط الجلسة عند إجراء عمليات حساسة أو إرسال طلبات تعديل مصادقة إلى خادمك. عليك توفير حماية إضافية من تزوير الطلبات من موقع إلكتروني مختلف (CSRF).
إذا كان إطار العمل لا يوفّر حماية من تزوير الطلبات بين المواقع الإلكترونية، فإنّ إحدى طرق منع الهجوم هي الحصول على رمز تعريف Firebase للمستخدم الذي سجّل الدخول باستخدام
getToken()وتضمين الرمز مع كل طلب (سيتم أيضًا إرسال ملف تعريف ارتباط الجلسة تلقائيًا). بعد ذلك، عليك التحقّق من صحة هذا الرمز باستخدام Firebase Server SDK بالإضافة إلى التحقّق من ملف تعريف ارتباط الجلسة، الذي أكمله إطار عمل الخلفية. سيؤدي ذلك إلى صعوبة نجاح هجمات تزوير الطلبات بين المواقع الإلكترونية، لأنّ رمز تعريف Firebase يتم تخزينه فقط باستخدام مساحة تخزين الويب وليس في ملف تعريف ارتباط.رموز Identity Toolkit صالحة لمدة أسبوعَين. قد تريد مواصلة إصدار رموز تدوم لمدة أسبوعَين، أو قد تريد إطالتها أو تقصيرها استنادًا إلى متطلبات الأمان في تطبيقك. عند تسجيل خروج المستخدم، امحِ ملف تعريف ارتباط الجلسة.
الخطوة 3: تعديل عناوين URL الخاصة بإعادة التوجيه لموفّري الهوية
في "وحدة تحكّم Firebase"، افتح قسم "المصادقة" وانقر على علامة التبويب طريقة تسجيل الدخول.
لكل موفّر تسجيل دخول موحّد تستخدمه، اتّبِع الخطوات التالية:
- انقر على اسم موفّر تسجيل الدخول.
- انسخ معرّف الموارد المنتظم (URI) الخاص بإعادة توجيه OAuth.
- في وحدة تحكّم المطوّر لموفّر تسجيل الدخول، عدِّل معرّف الموارد المنتظم (URI) الخاص بإعادة توجيه OAuth.
Android
الخطوة 1: إضافة Firebase إلى تطبيقك
افتح وحدة تحكّم Firebase، و اختر مشروع Identity Toolkit الذي سبق لك استيراده.
في صفحة "نظرة عامة"، انقر على إضافة تطبيق، ثم انقر على إضافة Firebase إلى تطبيق Android. في مربّع الحوار "إضافة Firebase"، أدخِل اسم حزمة تطبيقك والملف المرجعي لشهادة التوقيع، ثم انقر على إضافة تطبيق. يتم بعد ذلك تنزيل ملف الإعداد
google-services.jsonعلى جهاز الكمبيوتر.انسخ ملف الإعداد إلى دليل جذر وحدة تطبيق Android. يحتوي ملف الإعداد هذا على معلومات المشروع ومعلومات عميل Google OAuth.
في ملف
build.gradleعلى مستوى المشروع (<var>your-project</var>/build.gradle)، حدِّد اسم حزمة تطبيقك في القسمdefaultConfig:defaultConfig { ….. applicationId "com.your-app" }في ملف
build.gradleعلى مستوى المشروع أيضًا، أضِف تبعية لتضمين المكوّن الإضافي google-services:buildscript { dependencies { // Add this line classpath 'com.google.gms:google-services:3.0.0' } }في ملف
build.gradleعلى مستوى التطبيق (<var>my-project</var>/<var>app-module</var>/build.gradle)، أضِف السطر التالي في الأسفل لتفعيل المكوّن الإضافي google-services:// Add to the bottom of the file apply plugin: 'com.google.gms.google-services'يستخدم المكوّن الإضافي google-services ملف
google-services.jsonلضبط تطبيقك لاستخدام Firebase.في ملف
build.gradleعلى مستوى التطبيق أيضًا، أضِف تبعية Firebase Authentication:compile 'com.google.firebase:firebase-auth:24.1.0' compile 'com.google.android.gms:play-services-auth:21.6.0'
الخطوة 2: إزالة Identity Toolkit SDK
- أزِل إعداد Identity Toolkit من ملف
AndroidManifest.xml. يتم تضمين هذه المعلومات في ملفgoogle-service.jsonويتم تحميلها بواسطة المكوّن الإضافي google-services. - أزِل Identity Toolkit SDK من تطبيقك.
الخطوة 3: إضافة FirebaseUI إلى تطبيقك
أضِف FirebaseUI Auth إلى تطبيقك.
في تطبيقك، استبدِل استدعاءات Identity Toolkit SDK باستدعاءات FirebaseUI.
iOS
الخطوة 1: إضافة Firebase إلى تطبيقك
أضِف حزمة Firebase SDK إلى تطبيقك عن طريق تنفيذ الأوامر التالية:
$ cd your-project directory $ pod init $ pod 'Firebase'افتح وحدة تحكّم Firebase، و اختر مشروع Identity Toolkit الذي سبق لك استيراده.
في صفحة "نظرة عامة"، انقر على إضافة تطبيق، ثم انقر على إضافة Firebase إلى تطبيق iOS. في مربّع الحوار "إضافة Firebase"، أدخِل رقم تعريف حزمة تطبيقك و رقم تعريف متجر التطبيقات، ثم انقر على إضافة تطبيق. يتم بعد ذلك تنزيل ملف الإعداد
GoogleService-Info.plistعلى جهاز الكمبيوتر. إذا كان لديك أرقام تعريف حِزم متعددة في مشروعك، يجب ربط كل رقم تعريف حزمة في "وحدة تحكّم Firebase" لكي يكون له ملفGoogleService-Info.plistخاص به.انسخ ملف الإعداد إلى جذر مشروع Xcode وأضِفه إلى كل الأهداف.
الخطوة 2: إزالة Identity Toolkit SDK
- أزِل
GoogleIdentityToolkitمن ملف Podfile لتطبيقك. - نفِّذ الأمر
pod install.
الخطوة 3: إضافة FirebaseUI إلى تطبيقك
أضِف FirebaseUI Auth إلى تطبيقك.
في تطبيقك، استبدِل استدعاءات Identity Toolkit SDK باستدعاءات FirebaseUI.