تم إصدار أحدث إصدار من Google Identity Toolkit باسم Firebase Authentication. من الآن فصاعدًا، سيتم تجميد العمل على ميزات Identity Toolkit وسيتم تطوير كل الميزات الجديدة في Firebase Authentication. ننصح مطوّري Identity Toolkit بالانتقال إلى Firebase Authentication في أقرب وقت ممكن لتطبيقاتهم، ومع ذلك، سيظل بإمكانهم استخدام Identity Toolkit ولن يتم إيقافها نهائيًا بدون إشعار إضافي.
ميزات جديدة
تتضمّن Firebase Authentication حاليًا بعض التحسينات المهمة على ميزات Google Identity Toolkit:
الوصول إلى جميع ميزات Firebase
Firebase هو نظام أساسي للجوّال يساعد على التطوير السريع للتطبيقات العالية الجودة وزيادة قاعدة المستخدمين وربح المزيد من الأموال. تتألف Firebase من ميزات تكميلية يمكنك دمجها لتلبية احتياجاتك، وتشمل البنية الأساسية لما يلي: إحصاءات الأجهزة الجوّالة، المراسلة عبر السحابة الإلكترونية، قاعدة بيانات في الوقت الفعلي، تخزين الملفات، استضافة ثابتة، الإعداد عن بُعد، الإبلاغ عن الأعطال في الأجهزة الجوّالة، اختبار Android.
واجهات المستخدم المعدَّلة
أعدنا إنشاء مسارات واجهة المستخدم بالكامل استنادًا إلى أحدث دراسات تجربة المستخدم التي أجرتها Google. ويشمل ذلك استرداد كلمة المرور وربط الحسابات ومسارات تحديد هوية الحسابات الجديدة/الحالية التي تستغرق غالبًا وقتًا طويلاً لإنشاء الرموز البرمجية و تصحيح الأخطاء. وهي تدمج ميزة Smart Lock لكلمات المرور على أجهزة Android، ما أدى إلى تحسين الإحالات الناجحة لتسجيل الدخول والاشتراك في التطبيقات المشارِكة بشكل كبير. تتيح هذه الميزة أيضًا تعديلات سهلة على المظهر لتتناسب مع تطبيقك، وتمت إتاحة إصدارَي Android وiOS المتاحَين للجميع من أجل منح المستخدمين أقصى قدر من إمكانية التخصيص.
إعداد الخادم بشكلٍ مبسّط
سهّلنا على المطوّرين استخدام Firebase Authentication. من خلال استخدام Identity Toolkit، لاحظنا أنّ العديد من المطوّرين اختاروا عدم تنفيذ تدفق استرداد البريد الإلكتروني، ما جعل من المستحيل على المستخدمين استرداد حساباتهم في حال نسيان كلمة المرور. يمكن لخدمة Firebase Authentication إرسال رسائل التحقّق من البريد الإلكتروني وإعادة ضبط كلمة المرور وتغيير كلمة المرور إلى المستخدم، ويمكن تخصيص النص بسهولة لمستخدميك. بالإضافة إلى ذلك، لم تعُد بحاجة إلى استضافة تطبيقات مصغّرة لواجهة المستخدم لاستضافة عمليات إعادة التوجيه و إكمال عمليات تغيير كلمة المرور.
وحدة تحكّم المشرف الجديدة
تتضمّن Firebase وحدة تحكّم جديدة للمطوّرين، ويسمح لك قسم "المصادقة" بعرض المستخدمين وتعديلهم وحذفهم. يمكن أن يكون هذا مفيدًا جدًا في تصحيح أخطاء عمليات تسجيل الدخول والاشتراك. تتيح لك وحدة التحكّم أيضًا ضبط طرق المصادقة و تخصيص نماذج الرسائل الإلكترونية.
حِزم SDK الجديدة
تتوفّر الآن جميع واجهات برمجة تطبيقات الخادم في Identity Toolkit بشكلٍ أصلي مع كل مكتبة من مكتبات العملاء (Android وiOS والويب). سيتمكّن المطوّرون من تسجيل دخول المستخدمين القدامى والجدد وتسجيلهم، والوصول إلى خصائص المستخدمين، وربط الحسابات وتعديلها وحذفها، وإعادة ضبط كلمات المرور، وغير ذلك بدون الارتباط بواجهة مستخدم ثابتة. يمكنك إنشاء خطوات تسجيل الدخول و التجربة بالكامل يدويًا على واجهة برمجة التطبيقات هذه إذا كنت تفضّل ذلك.
إدارة الجلسات للتطبيقات المتوافقة مع الأجهزة الجوّالة
باستخدام Identity Toolkit، أنشأت التطبيقات حالة الجلسة الخاصة بها استنادًا إلى حدث المصادقة الأولي من Identity Toolkit. تستخدِم Firebase Auth خدمة خلفية تأخذ رمز إعادة التنشيط الذي تم إنشاؤه من حدث المصادقة وتستبدِله برموز وصول صالحة لمدة ساعة لنظامَي التشغيل Android وiOS و JavaScript. عندما يغيّر المستخدم كلمة المرور، لن تتمكّن علامات إعادة التنشيط من إنشاء علامات وصول جديدة، ما يؤدي إلى إيقاف إمكانية الوصول إلى أن يُعيد المستخدم المصادقة على ذلك الجهاز.
المصادقة المجهولة وGitHub
تتوافق Firebase Authentication مع نوعَين جديدَين من المصادقة: GitHub و غير معروف. يمكن استخدام ميزة "تسجيل الدخول بدون إظهار الهوية" لإنشاء معرّف مستخدم فريد بدون طلب إجراء أي عملية تسجيل دخول أو اشتراك من المستخدم. باستخدام مستخدم مجهول الهوية، يمكنك الآن إجراء طلبات بيانات من واجهة برمجة التطبيقات تمّت مصادقة المستخدم عليها، تمامًا كما يمكنك فعل ذلك باستخدام مستخدم عادي. عندما يقرّر المستخدم الاشتراك في حساب، يتم الاحتفاظ بكل النشاط باستخدام رقم تعريف المستخدم نفسه. وهذا مناسب تمامًا للحالات التي تتطلّب استخدام سلة تسوّق من جهة الخادم أو أي تطبيق تريد فيه إشراك العميل قبل توجيهه إلى مسار اشتراك.
الاختلافات في الميزات
لا تتوفّر حاليًا بعض ميزات Identity Toolkit في Firebase Authentication، بينما تمت إعادة تصميم ميزات أخرى وتعمل بشكل مختلف. يمكنك اختيار عدم نقل البيانات على الفور إذا كانت هذه الميزات مهمة لتطبيقك. في كثير من الحالات، قد لا تكون هذه الميزات مهمة لتطبيقك أو قد يكون هناك بدائل سهلة تتيح لك مواصلة نقل البيانات.
الاختلافات من جهة الخادم
لم يطرأ سوى تعديلات طفيفة على خدمة Identity Toolkit الأساسية وواجهات برمجة التطبيقات REST API الأساسية وقواعد بيانات المستخدمين الأساسية. ولكن تغيّرت بعض الميزات وطريقة دمج Firebase Authentication في خدمتك.
موفّرو الهوية
لا تتوفّر خدمة PayPal وAOL. سيظل بإمكان المستخدمين الذين لديهم حسابات من موفّري خدمات إدارة الهوية هؤلاء تسجيل الدخول إلى تطبيقك باستخدام عملية استرداد كلمة المرور وإعداد كلمة مرور لحساباتهم.
مكتبات الخادم
تتوفّر حاليًا حِزم تطوير البرامج (SDK) لمشرفي Firebase للغات البرمجية Java وNode.js وPython وGo وC#.
الرسائل الإلكترونية لإدارة الحساب
يمكن أن تُجري Firebase عمليات إعادة ضبط كلمة المرور وإثبات ملكية البريد الإلكتروني ورسائل تغيير البريد الإلكتروني، أو يمكن أن يُجريها المطوِّر من خلال خادم البريد الإلكتروني الخاص به. لا تتيح نماذج الرسائل الإلكترونية في Firebase حاليًا سوى إمكانية تخصيص محدودة.
تأكيد تغيير عنوان البريد الإلكتروني
في Identity Toolkit، عندما يقرر أحد المستخدمين تغيير عنوان بريده الإلكتروني، يتم إرسال رسالة إلكترونية إلى العنوان الجديد تتضمّن رابطًا لمواصلة عملية تغيير عنوان البريد الإلكتروني.
تؤكد Firebase تغيير عنوان البريد الإلكتروني من خلال إرسال رسالة إلكترونية لإبطال الاشتراك إلى عنوان البريد الإلكتروني القديم مع تضمين رابط لإلغاء التغيير.
طرح موفِّر الهوية (IdP)
كانت أداة Identity Toolkit تتيح إضافة موفّري الهوية إلى نظام تسجيل الدخول تدريجيًا، حتى تتمكّن من تجربة تأثير ذلك على طلبات الدعم. تمت إزالة هذه الميزة في Firebase Authentication.
الاختلافات من جهة العميل
في Firebase، يتم تقسيم الميزات التي يوفّرها Google Identity Toolkit إلى عنصرين:
حِزم تطوير البرامج (SDK) لمصادقة Firebase
في Firebase Authentication، تم تجميع الوظائف التي يوفّرها واجهة برمجة التطبيقات REST API في حِزم تطوير البرامج (SDK) للعملاء المتوفّرة لنظامَي التشغيل Android وiOS و JavaScript. يمكنك استخدام حزمة SDK لتسجيل دخول المستخدمين وتسجيلهم، والوصول إلى معلومات ملفه الشخصي، وربط الحسابات وتعديلها وحذفها، وإعادة ضبط كلمات المرور باستخدام حزمة SDK للعملاء بدلاً من التواصل مع خدمة الخلفية من خلال طلبات REST.
FirebaseUI Auth
تمّت إعادة إنشاء جميع مسارات واجهة المستخدم التي تدير تسجيل الدخول والاشتراك واسترداد كلمة المرور وربط الحساب باستخدام حِزم تطوير البرامج (SDK) لنظام مصادقة Frebase. وتتوفّر هذه الحِزم كحِزم تطوير برامج (SDK) مفتوحة المصدر لنظامَي التشغيل iOS وAndroid، ما يتيح لك تخصيص عمليات الإعداد بالكامل بطرق لا يمكن إجراؤها باستخدام Identity Toolkit.
تشمل الاختلافات الإضافية ما يلي:
الجلسات ونقل البيانات
بما أنّه تتم إدارة الجلسات بشكلٍ مختلف في Identity Toolkit وFirebase Authentication، سيتم إنهاء جلسات المستخدمين الحالية عند ترقية حزمة تطوير البرامج (SDK)، وسيكون على المستخدمين تسجيل الدخول مرة أخرى.
قبل البدء
قبل أن تتمكّن من نقل البيانات من Identity Toolkit إلى Firebase Authentication، يجب
افتح وحدة تحكُّم Firebase، وانقر على استيراد مشروع Google، واختَر مشروع Identity Toolkit.
انقر على settings > الأذونات لفتح صفحة "إدارة الهوية وإمكانية الوصول والمشرف".
افتح حسابات الخدمة. يمكنك هنا الاطّلاع على حساب الخدمة الذي سبق أن أعددته لـ Identity Toolkit.
بجانب حساب الخدمة، انقر على more_vert > إنشاء مفتاح. بعد ذلك، في مربّع حوار إنشاء مفتاح خاص، اضبط نوع المفتاح على JSON وانقر على إنشاء. يتم تنزيل ملف JSON يحتوي على بيانات اعتماد حساب الخدمة. ستحتاج إلى ذلك لتهيئة حزمة SDK في الخطوة التالية.
ارجع إلى وحدة تحكُّم Firebase. في قسم "المصادقة" (Auth)، افتح صفحة نماذج الرسائل الإلكترونية (Email Templates). في هذه الصفحة، يمكنك تخصيص نماذج الرسائل الإلكترونية لتطبيقك.
في Identity Toolkit، عندما يعيد المستخدمون ضبط كلمات المرور ويغيّرون عناوين البريد الإلكتروني ويثبتون ملكية عناوين البريد الإلكتروني، عليك الحصول على رمز خارج نطاق المكتب من خادم Identity Toolkit، ثم إرسال الرمز إلى المستخدمين عبر البريد الإلكتروني. تُرسِل Firebase رسائل إلكترونية استنادًا إلى النماذج التي تضبطها بدون الحاجة إلى تنفيذ إجراءات إضافية.
اختياري: إذا كنت بحاجة إلى الوصول إلى خدمات Firebase على خادمك، ثبِّت حزمة تطوير البرامج (SDK) لمنصّة Firebase.
يمكنك تثبيت وحدة 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، كان يتم ضبط ملف تعريف ارتباط للمستخدم كان يُستخدَم لبدء الجلسة. كانت مدة صلاحية ملف تعريف الارتباط هذا أسبوعَين، وكان يُستخدَم للسماح للمستخدم باستخدام تطبيقات مصغّرة لإدارة الحساب من أجل تغيير كلمة المرور وعنوان البريد الإلكتروني. كانت بعض المواقع الإلكترونية تستخدِم ملف تعريف الارتباط هذا لمصادقة جميع طلبات الصفحات الأخرى على الموقع الإلكتروني. استخدمت المواقع الإلكترونية الأخرى ملف تعريف الارتباط لإنشاء ملفات تعريف ارتباط خاصة بها من خلال نظام إدارة ملفات تعريف الارتباط في إطار العمل.
تدير حِزم تطوير البرامج (SDK) لعملاء Firebase الآن رموز تعريف Firebase وتعمل مع الخلفية في Firebase Authentication للحفاظ على حداثة الجلسة. تنتهي صلاحية الجلسات في الخلفية عند حدوث تغييرات مهمة في الحساب (مثل تغييرات كلمة المرور للمستخدم). لا يتم تلقائيًا ضبط رموز تعريف Firebase على أنّها ملفات تعريف ارتباط على مزوّد خدمة الويب، وفترة صلاحيتها ساعة واحدة فقط. ما لم تكن تريد جلسات تبلغ مدتها ساعة واحدة فقط، لا تكون علامات Firebase ID مناسبة لاستخدامها كملف تعريف ارتباط للتحقّق من جميع طلبات الصفحات. بدلاً من ذلك، عليك إعداد مستمع لتسجيل دخول المستخدم، الحصول على الرمز المميّز لتعريف Firebase، التحقّق من صحة الرمز المميّز، وإنشاء ملف تعريف الارتباط الخاص بك من خلال نظام إدارة ملفات تعريف الارتباط في إطار العمل.
عليك ضبط مدة جلسة ملف تعريف الارتباط استنادًا إلى متطلّبات أمان تطبيقك.
مسار تسجيل الدخول على الويب
في السابق، كانت تتم إعادة توجيه المستخدمين إلى
accountchooser.com
عند بدء تسجيل الدخول لمعرفة المعرّف الذي يريد المستخدم استخدامه. تبدأ عملية Firebase Auth واجهة المستخدم الآن بقائمة طُرق تسجيل الدخول، بما في ذلك خيار بريد إلكتروني ينتقل إلىaccountchooser.com
للويب ويستخدم hintRequest API على Android. بالإضافة إلى ذلك، لم تعُد عناوين البريد الإلكتروني مطلوبة في واجهة مستخدم Firebase. سيسهّل ذلك إتاحة استخدام ميزة "المستخدمون المجهولون" أو مستخدمي المصادقة المخصّصة أو المستخدمين من مقدّمي الخدمات الذين لا يشترطون استخدام عناوين البريد الإلكتروني.تطبيق مصغّر لإدارة الحساب
توفّر هذه الأداة المصغّرة واجهة مستخدم للمستخدمين من أجل تغيير عناوين البريد الإلكتروني أو كلمات المرور أو إلغاء ربط حساباتهم بمزوّدي الهوية. وهي قيد التطوير حاليًا.
زر/تطبيق مصغّر لتسجيل الدخول
لم تعُد التطبيقات المصغّرة، مثل زر تسجيل الدخول وبطاقة المستخدم، متاحة. ويمكن إنشاؤها بسهولة بالغة باستخدام واجهة برمجة التطبيقات Firebase Authentication API.
لا يتوفّر signOutUrl
عليك الاتصال برقم
firebase.auth.signOut()
ومعالجة طلب معاودة الاتصال.عدم توفّر oobActionUrl
تتولى منصة Firebase الآن إرسال الرسائل الإلكترونية ويتم ضبطها في وحدة تحكّم Firebase.
تخصيص CSS
تستخدم FirebaseUI أسلوب Material Design Lite الذي يضيف الرسومات المتحركة لتصميم Material Design بشكل ديناميكي.
الخطوة 1: تغيير رمز الخادم
إذا كان خادمك يعتمد على رمز مميّز في Identity Toolkit (صالح لمدة أسبوعَين) لمحاولة إدارة جلسات مستخدمي الويب، عليك تحويل الخادم لاستخدام ملف تعريف ارتباط الجلسة الخاص به.
- نفِّذ نقطة نهاية من أجل التحقّق من صحة رمز تعريف Firebase وضبط ملف تعريف ارتباط الجلسة للمستخدم. يُرسِل تطبيق العميل رمز تعريف Firebase العميل إلى نقطة النهاية هذه.
- إذا كان الطلب الوافد يحتوي على ملف تعريف ارتباط الجلسة الخاص بك، يمكنك اعتبار المستخدم مُعتمَدًا. وإلا، يُرجى التعامل مع الطلب على أنّه غير مصادقة.
- إذا كنت لا تريد أن يفقد أي من المستخدمين جلساتهم الحالية التي تم تسجيل الدخول إليها، عليك الانتظار لمدة أسبوعين حتى تنتهي صلاحية جميع علامات Identity Toolkit، أو يمكنك أيضًا إجراء عملية التحقّق من صحة الرمز المميّز المزدوج لتطبيق الويب كما هو موضّح أدناه في الخطوة 3.
بعد ذلك، يجب تعديل منطق التحقّق من الرمز المميّز لأنّ رموز Firebase المميّزة تختلف عن رموز Identity Toolkit المميّزة. ثبِّت حزمة تطوير البرامج (SDK) لخادم Firebase على خادمك، أو إذا كنت تستخدم لغة غير متوافقة مع حزمة تطوير البرامج (SDK) لخادم Firebase، نزِّل مكتبة التحقّق من صحة رمز JWT لبيئة التشغيل وتحقّق من صحة الرمز المميّز بشكلٍ صحيح.
عند إجراء التعديلات أعلاه لأول مرة، قد تظلّ لديك مسارات رموز برمجية تعتمد على الرموز المميّزة في Identity Toolkit. إذا كانت لديك تطبيقات iOS أو Android، سيتعين على المستخدمين الترقية إلى الإصدار الجديد من التطبيق لكي تعمل مسارات الرموز البرمجية الجديدة. إذا كنت لا تريد إجبار المستخدمين على تحديث تطبيقك، يمكنك إضافة منطق إضافي للتحقّق من الخادم يفحص الرمز المميّز ويحدّد ما إذا كان يحتاج إلى استخدام حزمة تطوير البرامج (SDK) لـ Firebase أو حزمة تطوير البرامج (SDK) لـ Identity Toolkit للتحقّق من صحة الرمز المميّز. إذا كان لديك فقط تطبيق ويب، سيتم نقل جميع طلبات المصادقة الجديدة إلى Firebase، وبالتالي، ما عليك سوى استخدام methods التحقّق من رمز 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>
أزِل حزمة تطوير البرامج (SDK) لـ Identity Toolkit من تطبيقك.
إذا كنت تعتمد على رمز تعريف Identity Toolkit لإدارة الجلسات، عليك إجراء التغييرات التالية من جهة العميل:
بعد تسجيل الدخول بنجاح باستخدام Firebase، يمكنك الحصول على رمز تعريف Firebase من خلال الاتصال بالرقم
firebase.auth().currentUser.getToken()
.أرسِل الرمز المميّز لـ Firebase ID إلى خادم الخلفية، وتحقّق منه، ثم أطلِق ملف تعريف ارتباط الجلسة الخاص بك.
لا تعتمد فقط على ملف تعريف ارتباط الجلسة عند تنفيذ عمليات حساسة أو إرسال طلبات تعديل مصادق عليها إلى خادمك. عليك توفير حماية إضافية من تزوير الطلبات من مواقع إلكترونية مختلفة (CSRF).
إذا لم يقدّم إطار العمل حماية من هجمات CSRF، يمكنك منع هجمات مماثلة من خلال الحصول على رمز تعريف Firebase للمستخدِم الذي سجّل الدخول باستخدام
getToken()
وتضمين الرمز المميّز مع كل طلب (سيتم أيضًا إرسال ملف تعريف الارتباط للجلسة تلقائيًا). بعد ذلك، عليك التحقّق من صحة هذا الرمز المميّز باستخدام حزمة تطوير البرامج (SDK) لخادم Firebase بالإضافة إلى التحقّق من ملف تعريف ارتباط الجلسة، الذي أكمله إطار عمل الخلفية. سيجعل ذلك من الصعب على هجمات CSRF التقدّم، لأنّ رمز تعريف Firebase لا يتم تخزينه إلا باستخدام ميزة تخزين الويب ولا يتم تخزينه مطلقًا في ملف تعريف ارتباط.تكون الرموز المميّزة في Identity Toolkit صالحة لمدة أسبوعين. يمكنك مواصلة إصدار الرموز المميّزة التي تستمر لمدة أسبوعَين، أو يمكنك جعلها أطول أو أقصر استنادًا إلى متطلبات الأمان في تطبيقك. عند تسجيل خروج المستخدِم، امسح ملف تعريف ارتباط الجلسة.
الخطوة 3: تعديل عناوين URL لإعادة التوجيه لموفِّر الهوية (IdP)
في "وحدة تحكّم 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":compile 'com.google.firebase:firebase-auth:23.2.0' compile 'com.google.android.gms:play-services-auth:21.3.0'
الخطوة 2: إزالة حزمة تطوير البرامج Identity Toolkit SDK
- أزِل إعدادات Identity Toolkit من ملف
AndroidManifest.xml
. يتم تضمين هذه المعلومات في ملفgoogle-service.json
ويتم تحميلها من خلال المكوّن الإضافي google-services. - أزِل حزمة تطوير البرامج (SDK) لـ Identity Toolkit من تطبيقك.
الخطوة 3: إضافة FirebaseUI إلى تطبيقك
أضِف FirebaseUI Auth إلى تطبيقك.
في تطبيقك، استبدِل طلبات البيانات إلى حزمة تطوير البرامج (SDK) لـ Identity Toolkit بطلبات البيانات إلى FirebaseUI.
iOS
الخطوة 1: إضافة Firebase إلى تطبيقك
أضِف حزمة تطوير البرامج (SDK) لمنصّة Firebase إلى تطبيقك من خلال تنفيذ الأوامر التالية:
$ 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 إلى تطبيقك.
في تطبيقك، استبدِل طلبات البيانات إلى حزمة تطوير البرامج (SDK) لـ Identity Toolkit بطلبات البيانات إلى FirebaseUI.