نقل ميزة تسجيل الدخول باستخدام رابط البريد الإلكتروني من "روابط Firebase الديناميكية" (لنظام التشغيل iOS)

كانت مصادقة رابط البريد الإلكتروني تعتمد سابقًا على Firebase Dynamic Links، وسيتم إيقافها نهائيًا في 25 أغسطس 2025. لقد نشرنا حلاً بديلاً في Firebase Authentication الإصدار 11.8.0 أو إصدار أحدث من حزمة تطوير البرامج لنظام التشغيل iOS. إذا كان تطبيقك يستخدم Firebase Dynamic Links، عليك نقل بيانات تطبيقك إلى نظام Firebase Hosting الجديد.

نقل نطاق Firebase Dynamic Links المرتبط بحسابك إلى نطاق Firebase Hosting

من الآن فصاعدًا، بدلاً من استخدام النطاق Firebase Dynamic Links، سيستخدم Firebase Authentication النطاق التلقائي Firebase Hosting لمشروعك من أجل إنشاء روابط لإجراءات الروابط عبر البريد الإلكتروني وغيرها من إجراءات الروابط خارج النطاق في التطبيقات على الأجهزة الجوّالة. وهذا يعني أنّه يجب أيضًا تعديل تطبيقك لاستخدام هذا النطاق التلقائي كنطاق مرتبط بروابط مصادقة البريد الإلكتروني لتطبيقك على الأجهزة الجوّالة.

يمكنك اتّباع التعليمات الواردة في المصادقة باستخدام Firebase من خلال رابط البريد الإلكتروني على منصات Apple لتعديل تطبيقك لاستخدام النطاق التلقائي الجديد Firebase Hosting الذي يتم توفيره تلقائيًا.

اتّبِع التعليمات التالية للتعامل مع الروابط من النطاق الجديد ولتوجيه Firebase Authentication إلى البدء في استخدام النطاق Firebase Hosting لإنشاء روابط تطبيقات الأجهزة الجوّالة من الآن فصاعدًا.

إذا أردت مواصلة استخدام أي من نطاقات Firebase Hosting المخصّصة أو حتى نطاق Firebase Dynamic Links المخصّص ليكون نطاقك المرتبط الجديد، اتّبِع التعليمات الواردة في قسم تخصيص الروابط المتوافقة مع الأجهزة الجوّالة وعدِّل الخطوات لتتوافق مع النطاق المطلوب استخدامه.

  1. ربط نطاق Firebase Hosting بنطاق تطبيقك المرتبط

    عليك ضبط النطاق المحدّد كنطاق مرتبط لروابط التطبيقات. لإعداد إذن الوصول في تطبيقك، افتح علامة التبويب التوقيع والقدرات في Xcode الخاصة بالعنصر المستهدف، وأضِف نطاقات Firebase Hosting من الخطوة السابقة إلى إذن الوصول "النطاقات المرتبطة ". في حال استخدام نطاق Firebase Hosting التلقائي، سيكون هذا النطاق applinks:PROJECT_ID.firebaseapp.com.

    يمكنك الاطّلاع على إتاحة النطاقات المرتبطة على موقع مستندات Apple الإلكتروني للحصول على مزيد من المعلومات.

    تم نشر ملف نطاق مرتبط ضمن جميع نطاقاتك Firebase Hosting. للوصول إلى هذه الصفحة، انتقِل إلى PROJECT_ID.firebaseapp.com/.well-known/apple-app-site-association. يمكن استبدال ملف AASA هذا. لمزيد من المعلومات، يُرجى الاطّلاع على إنشاء ملفات إعداد الروابط العامة واستضافتها.

  2. إعداد مشروعك لاستخدام الروابط الجديدة

    عندما تصبح مستعدًا للتعامل مع روابط النطاقات الجديدة، يمكنك استخدام Firebase Admin SDK لتعديل طريقة إنشاء روابط البريد الإلكتروني وإصدار تعليمات إلى الخلفية لبدء إنشاء الروابط باستخدام النطاق الجديد Firebase Hosting.

    import { getAuth } from 'firebase-admin/auth';
    
    const updateEmailAuthDomain = async () => {
        const updateRequest = {
            mobileLinksConfig: {
                domain: 'HOSTING_DOMAIN',
            },
        };
    
        const projectConfigManager = getAuth().projectConfigManager();
    
        try {
            const response = await projectConfigManager.updateProjectConfig(updateRequest);
            // Updated project config
            console.log('Project configuration updated successfully:', response);
        } catch (error) {
            console.error('Error updating the project:', error);
        }
    };
    
  3. إرسال رابط الرسالة الإلكترونية واسترداده

    أرسِل رابط تسجيل الدخول عبر البريد الإلكتروني كما كان من قبل. عندما ينقر مستخدم نهائي على الرابط، ستتم إعادة توجيهه إلى التطبيق إذا كان مثبّتًا لإكمال عملية تسجيل الدخول.

يمكنك استخدام نطاق Firebase Hosting مخصّص أو إعادة استخدام نطاقك المخصّص Firebase Dynamic Links ليكون نطاق الروابط الجديد على الأجهزة الجوّالة.

استخدام نطاق Firebase Hosting خاص

  1. اتّبِع دليل Firebase Hosting لإعداد نطاق مخصّص.
  2. اربط النطاق المخصّص بنطاق تطبيقك المرتبط.
  3. إرسال رابط مصادقة إلى عنوان البريد الإلكتروني الخاص بالمستخدم مع كائن ActionCodeSettings معدَّل يتضمّن نطاقًا مخصّصًا على النحو التالي: linkDomain
  1. يمكنك إعادة استخدام أي من نطاقات Firebase Dynamic Links كنطاق خاص. ومع ذلك، لن يعود أي من وظائف Firebase Dynamic Links متوافقًا (على سبيل المثال، لن يتمكّن المستخدمون من إعادة التوجيه إلى متجر التطبيقات إذا لم يكن التطبيق مثبَّتًا على أجهزتهم).
  2. إرسال رابط مصادقة إلى عنوان البريد الإلكتروني الخاص بالمستخدم مع كائن ActionCodeSettings معدَّل يتضمّن نطاقًا مخصّصًا على النحو التالي: linkDomain