يركز دليل الترحيل هذا على استخدام روابط التطبيقات والارتباطات العامة ، واستخدام استضافة Firebase بشكل اختياري لاستضافة ملفات اقتران موقع التطبيق.
يحل هذا الترحيل محل ميزات Firebase Dynamic Links التالية:
ميزة | روابط Firebase الديناميكية | روابط التطبيق / الروابط العالمية |
---|---|---|
قم بتوجيه المستخدمين إلى المتجر الصحيح لأجهزتهم بنقرة واحدة على الرابط | ★ | |
تزويد المستخدمين بمواصلة الرحلة بعد تنزيل تطبيقك وتثبيته باستخدام رابط عميق مؤجل | ★ | |
تزويد المستخدمين بتجربة سياقية باستخدام المحتوى المرتبط بعمق في تطبيقك (عند تثبيته بالفعل) | ||
توفير البيانات التحليلية المتعلقة بأحداث النقر على الرابط الديناميكي | ||
توفير القدرة على إنشاء عناوين URL للروابط القصيرة |
إذا كنت لا تزال بحاجة إلى ميزات Firebase Dynamic Link الأخرى للترحيل غير المدعومة في هذا الدليل، فراجع سيناريوهات الترحيل الأخرى في وثائق الأسئلة المتداولة حول إهمال الارتباطات الديناميكية .
لنفترض أن لديك رابط Firebase الديناميكي الذي يبدو كما يلي:
مثال الارتباط الديناميكي | |
---|---|
اسم الرابط | مرحبًا بك في موقع example.com |
رابط عميق | https://example.web.app/welcome |
الروبوت التطبيق | com.example.android |
تطبيق أبل | com.example.ios |
رابط ديناميكي طويل | https://example.page.link/?link=https://example.web.app/welcome&apn=com.example.android&isi=123456789&ibi=com.example.iuos |
رابط ديناميكي قصير | https://example.page.link/m9Mm |
الهدف من دليل الترحيل هذا هو استبدال روابط Firebase الديناميكية مثل هذا:
https://example.page.link/m9Mm
باستخدام رابط التطبيق / الارتباط العام للروابط العميقة التي تبدو كما يلي:
https:// your-project-domain .web.app/welcome
لاحظ أن الرابط العميق لـ App Link / Universal Link سيوفر للمستخدمين ما يلي:
- سيؤدي الرابط العميق الذي يمكنهم النقر عليه إلى فتح تطبيقك عند تثبيته بالفعل
- استمرار لرحلة المستخدم الخاصة به للانتقال إلى جزء معين من تطبيقك عند فتحه
ومع ذلك، لن يوفر الرابط العميق لرابط التطبيق/الرابط العام السلوكيات التالية لمستخدميك (وهو ما فعلته روابط Firebase الديناميكية سابقًا):
- توجيه المستخدمين إلى المتجر الصحيح لأجهزتهم لتنزيل تطبيقك وتثبيته
- توفير استمرارية لرحلة المستخدم بعد تنزيل التطبيق وتثبيته وفتحه لأول مرة
لاحظ الاختلافات في سلوك ووظائف روابط التطبيقات/الارتباطات العامة هذه مقارنةً بروابط Firebase الديناميكية المذكورة في الجدول أعلاه.
قبل ان تبدأ
تستخدم Firebase Dynamic Links روابط التطبيقات (على Android) والارتباطات العامة (على iOS) في التنفيذ الأساسي الخاص بها من أجل توفير وظيفة الارتباط العميق بعد تثبيت تطبيقك بالفعل.
يتناول هذا الدليل كيفية إنشاء روابط التطبيقات والروابط العامة الخاصة بك باستخدام استضافة Firebase لاستبدال هذا الجزء من الوظائف التي توفرها الروابط الديناميكية لـ Firebase أثناء ترحيل روابط Firebase الديناميكية إلى حل ترحيل روابط التطبيقات / الروابط العامة الجديد.
ستحتاج إلى المعلومات التالية لإكمال عملية الترحيل:
- روابط Firebase الديناميكية التي تنوي ترحيلها
- معلمات URL للرابط العميق المضمنة في الروابط الديناميكية الخاصة بك
- النطاق الذي تخطط لاستخدامه لاستبدال نطاق Firebase Dynamic Links السابق (إن أمكن)
يمكنك استخدام دليل تصدير بيانات تعريف الارتباطات الديناميكية لتصدير بيانات تعريف الارتباط الموجودة لديك والحصول على المعلومات المذكورة أعلاه.
نظرة عامة على خطوات الترحيل
قم بتوفير مجال جديد (إذا لم يكن لديك بالفعل نطاق تريد استخدامه) لاستضافة ملفات تكوين App Link / Universal Link باستخدام Firebase Hosting.
قم بإنشاء واستضافة ملفات تكوين App Link / Universal Link على مجال الاستضافة الخاص بك.
قم بإنشاء روابط تطبيقات جديدة / روابط عامة تتوافق مع مخطط الارتباط العميق المستخدم في روابط Firebase الديناميكية.
قم بتحديث تطبيقات Android / iOS ورمز التطبيق الخاص بك لتلقي الروابط العميقة.
اختبار روابط التطبيقات/تكاملات الروابط العامة.
استبدل روابط Firebase الديناميكية المنشورة أو المشتركة بروابط التطبيقات والروابط العامة.
ستكون الخطوة الأولى مشتركة بين تدفقات ترحيل روابط التطبيقات أو الارتباط العالمي. سيختلف الباقي اعتمادًا على النظام الأساسي، لذا انتقل إلى قسم الدليل أدناه اعتمادًا على النظام الأساسي الذي ترغب في ترحيله أولاً.
قم بتوفير مجال جديد لاستضافة ملفات تكوين App Link / Universal Link باستخدام Firebase Hosting
اختر المجال
الخطوة الأولى هي اختيار المجال الذي ترغب في استخدامه لروابط التطبيقات/الروابط العالمية. سيكون هذا هو المجال الذي سيتم استخدامه للروابط الجديدة التي ستشاركها مع المستخدمين.
إذا كنت تستخدم استضافة Firebase ، فسيتم توفير النطاقات الفرعية للمشروع بالتنسيق your-project-domain .web.app
أو your-project-domain .firebaseapp.com
تلقائيًا دون أي تكلفة. يمكنك اختياريًا استخدام نطاق مخصص مع أو بدون استضافة Firebase لاستضافة ملفات تكوين App Link / Universal Link أيضًا.
قم بإعداد استضافة Firebase
بعد ذلك، ستحتاج إلى إعداد مثيل Firebase Hosting وتكوينه .
بحلول الوقت الذي تنتهي فيه من إعداد مثيل استضافة Firebase، سيكون لديك نطاق مشابه لـ your-project-domain .web.app
`، أو نطاق مخصص إذا كنت تفضل ذلك.
خطوات الترحيل لروابط تطبيقات Android
قم بإنشاء واستضافة ملفات تكوين App Link على مجال الاستضافة الجديد الخاص بك
لاستخدام روابط التطبيقات، يجب عليك استضافة ملف تكوين يساعد في إنشاء ارتباط آمن بين المجال المستخدم في روابطك وتطبيقك. بالنسبة لروابط التطبيقات، هذا هو ملف assetlinks.json
.
خطوات إنشاء واستضافة ملف astlinks.json
يتيح لنا ملف assetlinks.json
تقديم قائمة بالتطبيقات المعتمدة التي يمكنها التعامل مع محتويات نطاق الويب الذي سنستخدمه لروابط التطبيقات الخاصة بنا. يجب استضافة ملف astlinks.json نفسه في جذر نطاق الويب ضمن المسار: /.well-known
.
اتبع الخطوات أدناه لإكمال هذا التكوين:
قم بإنشاء المجلد
.well-known
ضمن المجلد العام في الدليل الجذر لاستضافة Firebase.قم بإنشاء ملف باسم
assetlinks.json
ضمن المجلد.well-known
.انسخ المحتوى التالي إلى ملف Assetlinks.json الخاص بك، مع ملاحظة معنى كل حقل أدناه:
[{ "relation": ["delegate_permission/common.handle_all_urls"], "target": { "namespace": "android_app", "package_name": "com.example.android", "sha256_cert_fingerprints": ["01:23:45:67:89:AB:CD:EF:01:23:45:67:89:AB:CD:EF:01:23:45:67:89:AB:CD:EF:01:23:45:67:89:AB:CD:EF"] } }]
-
namespace
- تشير إلى اسم التطبيق الذي تريد تقديمه -
package_name
- يشير إلى معرف التطبيق المعلن في ملفbuild.gradle
الخاص بالتطبيق -
sha256_cert_fingerprints
- يشير إلى بصمة SHA256 لملف تخزين المفاتيح الذي تستخدمه لتوقيع التطبيق.
يمكنك استخدام ملف debug.keystore الذي يستخدمه Android Studio لإنشاء سجل sha256_cert_fingerprints لأغراض تصحيح الأخطاء. يمكنك العثور على الملف على
/Users/<username>/.android/debug.keystore
على نظامي التشغيل Mac وLinux وC:\Users\<username>\.android\debug.keystore
على نظام التشغيل Windows.من مخزن المفاتيح هذا، يمكنك جلب قيمة SHA256 باستخدام أداة المفاتيح.
راجع هذا القسم من وثائق روابط التطبيقات للحصول على مزيد من الإرشادات حول إكمال هذه الخطوة.
وبدلاً من ذلك، يمكنك أيضًا استخدام App Links Assistant في Android Studio لإنشاء محتويات ملف astlinks.json وتهيئة تطبيقك للتعامل مع روابط التطبيقات.
-
قم بتحديث ملف firebase.json الخاص بك لفهرسة الملف للاستضافة.
"headers": [ { "source": "/.well-known/assetlinks.json", "headers": [ { "key": "Content-Type", "value": "application/json" } ] } ]
الآن بعد أن أصبح لدينا ملف Assetlinks.json في مكانه الصحيح، قم بتشغيل
firebase deploy
لاستضافة التغييرات.لاحظ أنك ستحتاج إلى تثبيت Firebase CLI لتشغيل أمر النشر أعلاه.
firebase deploy --only hosting
تحقق من ملف assetlinks.json بالانتقال إلى
https:// your-project-domain .web.app/.well-known/assetlinks.json
أنشئ روابط تطبيقات جديدة تتطابق مع مخطط الارتباط العميق المستخدم في روابط Firebase الديناميكية
في هذه الخطوة، ستعيد إنشاء الروابط العميقة من روابط Firebase الديناميكية باستخدام عناوين URL العادية للارتباطات العميقة التي تطابق المجال الجديد الذي أنشأته لروابط التطبيقات الخاصة بك.
على سبيل المثال، لنفترض أن لديك رابط Firebase الديناميكي التالي:
مثال الارتباط الديناميكي | |
---|---|
اسم الرابط | مرحبًا بك في موقع example.com |
رابط عميق | https://example.web.app/welcome |
الروبوت التطبيق | com.example.android |
تطبيق أبل | com.example.ios |
رابط ديناميكي طويل | https://example.page.link/?link=https://example.web.app/welcome&apn=com.example.android&isi=123456789&ibi=com.example.iuos |
رابط ديناميكي قصير | https://example.page.link/m9Mm |
في هذه الحالة، يمكنك استخراج معلمة الرابط العميق - على سبيل المثال https://example.web.app/welcome وستستخدمها الآن كمعلمة رابط التطبيق لتطبيقك.
ستحتاج إلى تكرار هذه العملية لكل رابط Firebase ديناميكي ترغب في الترحيل إليه باستخدام روابط التطبيقات / الروابط العامة، وتكرار مخطط الارتباط العميق الذي استخدمته.
على سبيل المثال، يرجى الاطلاع على المجموعة التالية من الروابط المختصرة لـ Firebase Dynamic Links ومعلمات الارتباط العميق وقيم الارتباط العميق المُرحَّلة:
رابط قصير | معلمة الارتباط العميق | تم ترحيل الرابط العميق |
---|---|---|
yourapp.page.link/welcome | https://example.com/welcome | yourapp.web.app/welcome |
yourapp.page.link/c7sn | https://example.com/main/?p=23&t=1 | yourapp.web.app/main/?p=23&t=1 |
yourapp.page.link/social | https://example.com/friendinvite/?add=1 | yourapp.web.app/friendinvite/?add=1 |
بعد ذلك، ستحتاج إلى استبدال أي مثيلات لروابط Firebase الديناميكية التي تم نشرها أو مشاركتها مع الروابط العميقة المُرحّلة الجديدة بحيث ينقر المستخدمون على روابط التطبيقات هذه بدلاً من روابط Firebase الديناميكية السابقة.
قم بتحديث تطبيق Android ورمز التطبيق الخاص بك لتلقي الروابط العميقة
الخطوة التالية بعد تحديد المجال واختيار مخطط الارتباط العميق وترحيل روابط Firebase الديناميكية إلى روابط التطبيقات هي تحديث تطبيق Android ورمز التطبيق لتلقي الروابط العميقة الجديدة.
نوصي باتباع وثائق روابط التطبيقات الكاملة هنا أو بدلاً من ذلك دليل Android Studio حول تكوين تطبيقك للتعامل مع الروابط العميقة، ولكن الخطوات الرئيسية تتضمن:
- تحديد الأنشطة التي يجب أن تتعامل مع الروابط العميقة المعنية
- إضافة مرشح النوايا لتلك الأنشطة في ملف AndroidManifest.xml الخاص بك
- استلام الرابط العميق في رمز تطبيق أنشطتك
لنفترض أنك تريد استخدام MainActivity الخاص بك للتعامل مع بعض الروابط العميقة الخاصة بك. للقيام بذلك، ستحتاج إلى إضافة Intent Filter التالي إلى MainActivity في ملف AndroidManifest.xml الخاص بك:
<activity android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:host="example.web.app" android:scheme="http"
android:pathPrefix="/welcome" />
<data android:host="example.web.app" android:scheme="https"
android:pathPrefix="/welcome" />
</intent-filter>
</activity>
في هذه الخطوة، أنت تحدد أن MainActivity هو الوجهة للتعامل مع الروابط العميقة من المجال wxample.web.app والذي يتضمن بادئة المسار /welcome. لاحظ أنك ستحتاج أيضًا إلى تحديد السمة android:autoVerify="true"، والتي تسمح لك بتعيين تطبيقك باعتباره المعالج الافتراضي لهذا النوع المحدد من الارتباط.
أخيرًا، ستحتاج إلى إضافة الكود في MainActivity الخاص بك لاسترداد بيانات الارتباط العميق واستخدام ذلك لتعزيز تجربة الارتباط العميق في تطبيقك. يشبه هذا المنطق الذي ربما قمت بترميزه بالفعل في تطبيقك عند التكامل مع Firebase Dynamic Links.
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.main)
val data: Uri? = intent?.data
val toast = Toast.makeText(this, data, duration)
toast.show()
}
اختبار روابط التطبيق
يمكنك اختبار روابط التطبيقات التي أنشأتها للتو إما عن طريق تشغيل تطبيقك على جهاز فعلي أو في محاكي Android .
ستحتاج إلى إنشاء رابط قابل للنقر باستخدام المجال الذي تم تكوينه لروابط التطبيق الخاصة بك ثم النقر فوق هذا الرابط للتأكد من أنه يفتح في تطبيقك وينقلك إلى النشاط المقصود.
بدلاً من ذلك، يمكنك أيضًا اختبار تكامل روابط التطبيقات باستخدام App Links Assistant في Android Studio، أو استخدام الأمر التالي لعنوان URL لرابط التطبيق الذي قمت بتكوينه للتأكد من أنه يقوم بتشغيل النشاط المطابق بشكل صحيح:
adb shell am start -a android.intent.action.VIEW -d <your_deep_link_url>
استبدل روابط Firebase الديناميكية المنشورة أو المشتركة بروابط التطبيقات
ستكون الخطوة الأخيرة للترحيل هي استبدال روابط Firebase الديناميكية المنشورة أو المشتركة بروابط التطبيقات حيثما أمكن ذلك، ومواصلة استخدام روابط التطبيقات من الآن فصاعدًا.
سيختلف إكمال هذه الخطوة اعتمادًا على مكان وكيفية نشر روابط Firebase الديناميكية الخاصة بك، ولكن لمساعدتك في تتبع الروابط الموجودة، يمكنك تصدير بيانات تعريف Firebase Dynamic Link الموجودة لديك. راجع دليل تصدير البيانات التعريفية للارتباطات الديناميكية .
خطوات الترحيل للارتباطات العامة على iOS
قم بإنشاء واستضافة ملفات تكوين الروابط العامة الخاصة بك على مجال الاستضافة الجديد الخاص بك
لاستخدام الروابط العامة، يجب عليك استضافة ملف تكوين يساعد في إنشاء ارتباط آمن بين النطاق المستخدم في الروابط الخاصة بك وتطبيقك. بالنسبة للارتباطات العامة، هذا هو ملف apple-app-site-association
(المعروف أيضًا باسم ملف AASA).
خطوات إنشاء واستضافة ملف apple-app-site-associaton
يتيح لنا ملف AASA تقديم قائمة بالتطبيقات المعتمدة التي يمكنها التعامل مع محتويات نطاق الويب الذي سنستخدمه للارتباطات العامة الخاصة بنا. يجب استضافة ملف AASA نفسه في جذر نطاق الويب ضمن المسار: /.well-known.
اتبع الخطوات أدناه لإكمال هذا التكوين:
قم بإنشاء المجلد " .well-known " ضمن المجلد العام في الدليل الجذر لاستضافة Firebase.
قم بإنشاء ملف باسم " apple-app-site-association " ضمن المجلد ".well-known".
انسخ المحتوى التالي إلى ملف apple-app-site-association الخاص بك، مع ملاحظة معنى كل حقل أدناه:
{ "applinks": { "apps": [], "details": [ { "appId": "$TEAM_ID.com.firebase.UniversalLinks", "paths": [ "NOT /_/*", "/*" ] } ] } }
- $TEAM_ID.BundleId - اسم التطبيق المؤهل بالكامل والمصرح له بالتعامل مع الروابط
قم بتحديث ملف firebase.json الخاص بك لفهرسة الملف للاستضافة.
"headers": [ { "source": "/.well-known/apple-app-site-association", "headers": [ { "key": "Content-Type", "value": "application/json" } ] } ]
الآن بعد أن أصبح لدينا ملف AASA، قم بنشر Firebase لاستضافة التغييرات.
تحقق من ملف AASA بالانتقال إلى https:// your-project-domain .web.app/.well-known/app-app-site-association
أنشئ روابط عامة جديدة تتوافق مع مخطط الارتباط العميق المستخدم في روابط Firebase الديناميكية
في هذه الخطوة، ستعيد إنشاء الروابط العميقة من روابط Firebase الديناميكية باستخدام عناوين URL العادية للارتباطات العميقة التي تطابق المجال الجديد الذي قمت بإنشائه للارتباطات العامة الخاصة بك.
على سبيل المثال، لنفترض أن لديك رابط Firebase الديناميكي التالي:
مثال الارتباط الديناميكي | |
---|---|
اسم الرابط | مرحبًا بك في موقع example.com |
رابط عميق | https://example.web.app/welcome |
الروبوت التطبيق | com.example.android |
تطبيق أبل | com.example.ios |
رابط ديناميكي طويل | https://example.page.link/?link=https://example.web.app/welcome&apn=com.example.android&isi=123456789&ibi=com.example.iuos |
رابط ديناميكي قصير | https://example.page.link/m9Mm |
في هذه الحالة، يمكنك استخراج معلمة الرابط العميق - iehttps://example.web.app/welcome وستستخدمها الآن كمعلمة Universal Link لتطبيقك.
ستحتاج إلى تكرار هذه العملية لكل رابط Firebase ديناميكي ترغب في الترحيل إليه باستخدام روابط التطبيقات / الروابط العامة، وتكرار مخطط الارتباط العميق الذي استخدمته.
على سبيل المثال، يرجى الاطلاع على المجموعة التالية من الروابط المختصرة لـ Firebase Dynamic Links ومعلمات الارتباط العميق وقيم الارتباط العميق المُرحَّلة:
رابط قصير | معلمة الارتباط العميق | تم ترحيل الرابط العميق |
---|---|---|
yourapp.page.link/welcome | https://example.com/welcome | yourapp.web.app/welcome |
yourapp.page.link/c7sn | https://example.com/main/?p=23&t=1 | yourapp.web.app/main/?p=23&t=1 |
yourapp.page.link/social | https://example.com/friendinvite/?add=1 | yourapp.web.app/friendinvite/?add=1 |
بعد ذلك، ستحتاج إلى استبدال أي مثيلات لروابط Firebase الديناميكية التي تم نشرها أو مشاركتها مع الروابط العميقة المُرحَّلة الجديدة بحيث ينقر المستخدمون على تلك الروابط العامة بدلاً من روابط Firebase الديناميكية السابقة.
قم بتحديث تطبيق iOS ورمز التطبيق الخاص بك لتلقي الروابط العميقة
الخطوة التالية بعد تحديد المجال واختيار مخطط الارتباط العميق وترحيل روابط Firebase الديناميكية إلى الروابط العامة هي تحديث تطبيق iOS الخاص بك ورمز التطبيق لتلقي الروابط العميقة الجديدة.
نوصي باتباع وثائق الروابط العامة الكاملة هنا حول تكوين تطبيقك للتعامل مع الروابط العميقة، ولكن الخطوات الرئيسية تتضمن ما يلي:
قم بتحديث تكوين مشروعك لتمكين تطبيقك من التعامل مع الروابط العميقة من المجال الذي تم إنشاؤه حديثًا
احصل على الرابط العميق في رمز التطبيق الخاص بك
من أجل تحديث تكوين مشروعك لتمكين تطبيقك من التعامل مع الروابط العميقة، ستحتاج إلى إضافة مجال مرتبط إضافي إلى مشروعك في xCode للمجال الذي تخطط الآن لاستخدامه لاستضافة موقع apple-app-site- الملف المرتبط.
يمكن القيام بذلك عن طريق:
- فتح اكس كود
- اختيار المشروع الخاص بك في متصفح الملفات
- انتقل إلى علامة التبويب التوقيع والإمكانات في إعدادات مشروعك
- انتقل لأسفل إلى قسم المجالات المرتبطة
- النقر على الزر + لإضافة النطاق الإضافي إلى مشروعك بتنسيق "ارتباطات التطبيق:
".
وأخيرًا، تحتاج إلى تحديث رمز التطبيق الخاص بك لتتمكن من استقبال الروابط العميقة الواردة.
لإنجاز ذلك، قم أولاً بتحديث ملف AppDelegate.swift للرد على الارتباط العالمي عن طريق إضافة التعليمة البرمجية التالية:
func application(_ application: UIApplication, continue userActivity: NSUserActivity,
restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
AppDelegate.showReceivedUrl(userActivity: userActivity);
return true
}
static func showReceivedUrl(userActivity: NSUserActivity) {
if userActivity.activityType == NSUserActivityTypeBrowsingWeb {
let url = userActivity.webpageURL!
print(url.absoluteString)
}
يتجاوز الكود أعلاه طريقة رد اتصال الرابط العالمي ويسجل عنوان URL للرابط العميق إذا كان موجودًا.
سنستدعي الآن نفس الأسلوب showReceivedUrl
من فئة SceneDelegate أيضًا، لأنه إذا كان التطبيق مفتوحًا بالفعل بحلول الوقت الذي نقر فيه المستخدم على الرابط العام، فإن رد الاتصال بالارتباط العام داخل SceneDelegate
سيكون هو الذي سيتم استدعاؤه.
func scene(_ scene: UIScene, continue userActivity: NSUserActivity) {
AppDelegate.showReceivedUrl(userActivity: userActivity)
}
اختبار الروابط العالمية
يمكنك اختبار الروابط العامة التي أنشأتها للتو إما عن طريق تشغيل تطبيقك على جهاز فعلي أو جهاز محاكاة .
ستحتاج إلى إنشاء رابط قابل للنقر باستخدام النطاق الذي تم تكوينه للارتباطات العامة الخاصة بك ثم النقر فوق هذا الرابط للتأكد من أنه يفتح في تطبيقك وينقلك إلى الشاشة المقصودة في تطبيقك.
دعم لافتات التطبيقات الذكية
نوصي بشدة باستخدام لافتات التطبيقات الذكية كوسيلة لتزويد المستخدمين بتجربة مماثلة للارتباطات الديناميكية لـ Firebase.
باستخدام لافتات التطبيقات الذكية، سيتم نقل المستخدمين إلى App Store للحصول على قائمة تطبيقاتك إذا لم يكن تطبيقك مثبتًا بالفعل على أجهزتهم. يمكنك أيضًا تكوين معلمة بشكل اختياري لتمريرها إلى تطبيقك بعد تنزيله وتثبيته لتزويد المستخدمين بمواصلة رحلتهم. إذا كان تطبيقك مثبتًا بالفعل، فسيتم فتح تمرير المعلمة إلى تطبيقك للمساعدة في توجيه المستخدم إلى المحتوى المناسب بناءً على شعار التطبيق الذكي الذي نقر عليه.
استبدل روابط Firebase الديناميكية المنشورة أو المشتركة بروابط التطبيقات
ستكون الخطوة الأخيرة للترحيل هي استبدال روابط Firebase الديناميكية المنشورة أو المشتركة بروابط عالمية كلما أمكن ذلك، ومواصلة استخدام الروابط العامة من الآن فصاعدًا.
سيختلف إكمال هذه الخطوة اعتمادًا على مكان وكيفية نشر روابط Firebase الديناميكية الخاصة بك.
لمساعدتك في تتبع روابط Firebase الديناميكية الحالية المراد ترحيلها، سننشر دليلاً حول كيفية تصدير بيانات تعريف الارتباط القصير من روابط Firebase الديناميكية. يرجى التحقق مرة أخرى من مستند الأسئلة الشائعة حول إهمال الروابط الديناميكية لمزيد من التحديثات.