نقل ميزة تسجيل الدخول باستخدام رابط البريد الإلكتروني من "روابط Firebase الديناميكية" (لنظام التشغيل Android)
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
كانت مصادقة رابط البريد الإلكتروني تعتمد سابقًا على Firebase Dynamic Links، وسيتم إيقافها نهائيًا في 25 أغسطس 2025. لقد نشرنا حلاً بديلاً في Firebase Authentication الإصدار 23.2.0 والإصدارات الأحدث من حزمة تطوير البرامج (SDK) لنظام التشغيل Android وFirebase BoM الإصدار 33.9.0 والإصدارات الأحدث. إذا كان تطبيقك يستخدم الروابط القديمة وتريد استخدام طريقة بديلة لنقل بيانات تطبيقك، يمكنك الاطّلاع على المصادقة باستخدام Firebase من خلال رابط إلكتروني في Android لاستخدام النظام الجديد المستند إلى Firebase Hosting.
بالإضافة إلى ذلك، إذا كنت تستخدم حزمة تطوير البرامج (SDK) لنظام التشغيل Android من Firebase Authentication بإصدار أقل من 20.0.0 (أو Firebase BoM بإصدار أقل من 26.0.0) لإدارة عمليات OAuth مع Firebase Authentication، عليك الترقية إلى أحدث إصدار من حزمة تطوير البرامج (SDK) من Authentication أو BoM (الإصدار 20.0.0 أو إصدار أحدث من Authentication أو الإصدار 26.0.0 أو إصدار أحدث من BoM) لمواصلة إدارة عمليات OAuth في Firebase Authentication.
نقل نطاق Firebase Dynamic Links المرتبط بحسابك إلى نطاق Firebase Hosting
من الآن فصاعدًا، بدلاً من استخدام النطاق Firebase Dynamic Links، سيستخدم Firebase Authentication النطاق التلقائي Firebase Hosting لمشروعك من أجل إنشاء روابط لإجراءات الروابط عبر البريد الإلكتروني وغيرها من إجراءات الروابط خارج النطاق في التطبيقات على الأجهزة الجوّالة. وهذا يعني أنّه يجب أيضًا تعديل تطبيقك لاستخدام هذا النطاق التلقائي كنطاق مرتبط لروابط مصادقة البريد الإلكتروني في تطبيقك على الأجهزة الجوّالة.
اتّبِع التعليمات التالية للتعامل مع الروابط من النطاق الجديد ولتوجيه Firebase Authentication لبدء استخدام النطاق الجديد لإنشاء روابط تطبيقات الأجهزة الجوّالة من الآن فصاعدًا.
إذا أردت مواصلة استخدام أي من نطاقات Firebase Hosting المخصّصة أو حتى نطاق Firebase Dynamic Links المخصّص ليكون نطاقك المرتبط الجديد، اتّبِع الخطوات التي تتطابق مع النطاق المطلوب استخدامه. يُرجى العِلم أنّه بعد إكمال التعليمات الواردة في القسم التالي، ستتم إزالة ميزة الربط بصفحات في التطبيق على نطاقك المخصّص Firebase Dynamic Links، وسيتم الاحتفاظ بالنطاق فقط لإنشاء روابط البريد الإلكتروني.
ضبط تطبيق Android للتعامل مع الرابط Firebase Hosting
للتعامل مع هذه الروابط من تطبيق Android، يجب تحديد اسم حزمة تطبيقك في إعدادات مشروع Firebase على وحدة التحكّم. بالإضافة إلى ذلك، يجب تقديم خوارزميتَي SHA-1 وSHA-256 لشهادة التطبيق.
إذا أردت أن تؤدي روابط Firebase Hosting إلى إعادة التوجيه إلى نشاط معيّن، عليك ضبط فلتر الأهداف في ملف AndroidManifest.xml. يجب أن يرصد فلتر الأهداف
Firebase Hosting الروابط الخاصة بنطاقك. في AndroidManifest.xml:
عندما يفتح المستخدمون رابط استضافة يتضمّن المسار "/__/auth/links" والمخطط والمضيف اللذين تحدّدهما، سيبدأ تطبيقك النشاط باستخدام فلتر الأهداف هذا للتعامل مع الرابط.
ضبط مشروعك لاستخدام الروابط الجديدة
عندما تكون مستعدًا للتعامل مع روابط النطاق الجديدة، يمكنك استخدام Firebase Admin SDK لتعديل طريقة إنشاء روابط البريد الإلكتروني وإصدار تعليمات إلى الخلفية لبدء إنشاء الروابط باستخدام النطاق الجديد Firebase Hosting.
constupdateRequest={mobileLinksConfig:{domain:'HOSTING_DOMAIN'}}constupdateProjectConfig=()=>{projectConfigManager.updateProjectConfig(updateRequest).then((response)=>{// updated project config}).catch((error)=>{console.log('Error updating the project:',error);});}
إرسال رابط الرسالة الإلكترونية واسترداده
أرسِل رابط تسجيل الدخول عبر البريد الإلكتروني كما كان من قبل. عندما ينقر المستخدِم النهائي على الرابط، ستتم إعادة توجيهه إلى التطبيق إذا كان مثبّتًا لإكمال عملية تسجيل الدخول.
تخصيص الروابط المتوافقة مع الأجهزة الجوّالة
يمكنك استخدام Firebase Hosting نطاق مخصّص أو إعادة استخدام نطاقك المخصّص
Firebase Dynamic Links ليكون نطاق الروابط الجديد على الأجهزة الجوّالة.
يمكنك إعادة استخدام أي من نطاقات Firebase Dynamic Links كنطاق خاص. ومع ذلك، لن يعود أي من وظائف Firebase Dynamic Links متوافقًا (على سبيل المثال، لا يمكن إعادة توجيه المستخدمين إلى متجر تطبيقات إذا لم يكن التطبيق مثبّتًا على أجهزتهم).
اضبط تطبيق Android للتعامل مع رابط Firebase Hosting
(التعليمات في القسم السابق أعلاه).
تاريخ التعديل الأخير: 2025-08-16 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-16 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["Email link authentication previously relied on Firebase Dynamic Links, which will be\n[shut down on August 25, 2025](/support/dynamic-links-faq). We've published an\nalternative solution in the Firebase Authentication Android SDK version 23.2.0+ and\nFirebase BoM version 33.9.0+. If your app uses the old style links and you\nwant to use an alternative method for migrating your app, see\n[Authenticate with Firebase using Email Link in Android](/docs/auth/android/email-link-auth)\nto use the new Firebase Hosting based system.\n\nAlso, if you're using the **Firebase Authentication Android SDK below v20.0.0 (or the\nFirebase BoM below v26.0.0) to manage OAuth flows** with Firebase Authentication,\nyou'll need to update to the latest Authentication SDK or BoM version\n(Authentication v20.0.0+ or BoM v26.0.0+) in order to continue managing OAuth\nflows in Firebase Authentication.\n\nMigrate your associated Firebase Dynamic Links domain to a Firebase Hosting domain\n\nMoving forward, rather than using a Firebase Dynamic Links domain, Firebase Authentication\nwill use the Firebase Hosting default domain for your project to create\nlinks for email link and other out-of-band link actions in mobile apps. This\nmeans that your app will also need to be updated to use this default domain as\nthe associated domain for email authentication links to your mobile app.\n\nYou can follow the instructions in\n[Authenticate with Firebase Using Email Link in Android](/docs/auth/android/email-link-auth) to update your mobile app links\nto use the new automatically provisioned Firebase Hosting default domain.\n\nUse the following instructions to handle links from the new domain and to\ninstruct Firebase Authentication to start using the new domain to generate mobile app\nlinks going forward.\n\nIf you'd like to continue using any of your custom Firebase Hosting domains\nor even your custom Firebase Dynamic Links domain to be your new associated\ndomain, follow the steps that match the intended domain you'd like to use. Note\nthat after completing the instructions in the following section, the deep\nlinking feature on your Firebase Dynamic Links custom domain will be removed;\nonly the domain itself will remain for creating email links.\n\n1. **Configure your Android application to handle your Firebase Hosting link**\n\n 1. In order to handle these links from your Android application, your app's package name needs to be specified in the Firebase console project settings. In addition, the SHA-1 and SHA-256 of the application certificate need to be provided.\n 2. If you want these Firebase Hosting links to redirect to a specific\n activity, you will need to configure an intent filter in your\n `AndroidManifest.xml` file. The intent filter should catch\n Firebase Hosting links of your domain. In `AndroidManifest.xml`:\n\n \u003cintent-filter android:autoVerify=\"true\"\u003e\n \u003caction android:name=\"android.intent.action.VIEW\" /\u003e\n \u003ccategory android:name=\"android.intent.category.BROWSABLE\" /\u003e\n \u003ccategory android:name=\"android.intent.category.DEFAULT\" /\u003e\n \u003cdata\n android:scheme=\"https\"\n android:host=\"PROJECT_ID.firebaseapp.com or a custom hosting domain\"\n android:pathPrefix=\"/__/auth/links\" /\u003e\n \u003c/intent-filter\u003e\n\n When users open a hosting link with the \"/__/auth/links\" path and the\n scheme and host you specify, your app will start the activity with this\n intent filter to handle the link.\n | **Important:** To ensure a seamless rollback, we recommend keeping your existing intent filter that handles Firebase Dynamic Links while trying out the Firebase Hosting link solution. The Firebase Dynamic Links solution will be available until August 25, 2025.\n2. **Configure your project to use the new links**\n\n When you're ready to handle the new domain links, you can use the\n [Firebase Admin SDK](/docs/admin/setup) to update how you want email links\n to be generated and instruct our backend to start generating links using\n the new Firebase Hosting domain. \n\n const updateRequest = {\n mobileLinksConfig: {\n domain: 'HOSTING_DOMAIN'\n }\n }\n const updateProjectConfig = () =\u003e {\n projectConfigManager.updateProjectConfig(updateRequest)\n .then((response) =\u003e {\n // updated project config\n }).catch((error) =\u003e {\n console.log('Error updating the project:', error);\n });\n }\n\n | **Important:** To rollback to the Firebase Dynamic Links while implementing and testing the backup solution, you should set the domain back to `FIREBASE_DYNAMIC_LINK`. The Firebase Dynamic Links solution will be available until August 25, 2025.\n3. **Send and redeem the email link**\n\n Send the email sign-in link as before. When the end user clicks the link,\n they will be redirected to the app if installed to complete the sign-in.\n\nCustomize your mobile links\n\nYou can use a custom Firebase Hosting domain or reuse your custom\nFirebase Dynamic Links domain to be your new mobile links domain.\n\nUse a custom Firebase Hosting domain\n\n1. Follow the [Firebase Hosting guide](/docs/hosting/custom-domain) to set up a custom domain.\n2. Configure your Android application to handle your Firebase Hosting link. (instructions in previous section above).\n3. [Send an authentication link to the user's email\n address](/docs/auth/android/email-link-auth#send_an_authentication_link_to_the_users_email_address) with an updated `ActionCodeSettings` object with a custom domain as `linkDomain`.\n\nRe-use your custom Firebase Dynamic Links domain\n\n1. You can re-use any of your Firebase Dynamic Links domains as your custom domain. However, any Firebase Dynamic Links functionality will no longer be supported (for example, users cannot be redirected to an app store if the app isn't installed on their device).\n2. Configure your Android application to handle your Firebase Hosting link (instructions in previous section above).\n3. [Send an authentication link to the user's email\n address](/docs/auth/android/email-link-auth#send_an_authentication_link_to_the_users_email_address) with an updated `ActionCodeSettings` object with a custom domain as `linkDomain`."]]