מעבר מקישורים דינמיים לקישורים לאפליקציה & קישורים אוניברסליים

מדריך ההעברה הזה מתמקד בשימוש בקישורים לאפליקציות ובקישורים אוניברסליים, עם אפשרות להשתמש באירוח ב-Firebase כדי לארח את קובצי השיוך של האפליקציה לאתר.

ההעברה הזו מחליפה את התכונות הבאות של קישורים דינמיים ב-Firebase:

תכונה קישורים דינמיים ב-Firebase קישורים לאפליקציות / קישורים אוניברסליים
הפניית משתמשים לחנות הנכונה למכשיר שלהם בלחיצה על קישור יחיד
אפשר לספק למשתמשים המשך של המסלול אחרי שהם מורידים ומתקינים את האפליקציה באמצעות קישור עומק מושהה
לספק למשתמשים חוויה הקשרית באמצעות תוכן שמקושר לעומק באפליקציה (כשהיא כבר מותקנת)
מספקים נתוחי Analytics שקשורים לאירועים מסוג קליק על קישור דינמי
אפשרות ליצור כתובות URL של קישורים קצרים

אם אתם עדיין צריכים תכונות אחרות של קישורים דינמיים ב-Firebase לצורך ההעברה, שלא נתמכות במדריך הזה, תוכלו לעיין בתרחישי העברה אחרים במסמכי שאלות נפוצות בנושא הוצאה משימוש של קישורים דינמיים.

נניח שיש לכם קישור דינמי ב-Firebase שנראה כך:

דוגמה לקישור דינמי
שם קישור ברוכים הבאים אל Example.com
קישור עומק https://example.web.app/welcome
אפליקציית Android com.example.android
אפליקציית Apple 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

שימו לב שקישור העומק מסוג קישור לאפליקציה או קישור אוניברסלי יספק למשתמשים את היתרונות הבאים:

  • קישור עומק שאפשר ללחוץ עליו כדי לפתוח את האפליקציה אם היא כבר מותקנת
  • המשך של מסלול המשתמש, שמוביל אותו לחלק ספציפי באפליקציה כשהיא נפתחת

עם זאת, קישור העומק מסוג קישור לאפליקציה או קישור אוניברסלי לא יספק למשתמשים את ההתנהגויות הבאות (שקישורים דינמיים של Firebase סיפקו בעבר):

  • הפניית המשתמשים לחנות הנכונה למכשיר שלהם כדי להוריד ולהתקין את האפליקציה
  • המשך מסע המשתמש אחרי ההורדה, ההתקנה והפתיחה של האפליקציה בפעם הראשונה

חשוב לשים לב להבדלים בהתנהגות ובפונקציונליות של הקישורים לאפליקציה / הקישורים האוניברסליים האלה בהשוואה לקישורים הדינמיים ב-Firebase, כפי שמפורט בטבלה שלמעלה.

לפני שמתחילים

קישורים דינמיים ב-Firebase משתמשים בקישורים לאפליקציות (ב-Android) ובקישורים אוניברסליים (ב-iOS) בהטמעה הבסיסית שלהם, כדי לספק פונקציונליות של קישורי עומק אחרי שהאפליקציה כבר מותקנת.

במדריך הזה מוסבר איך ליצור קישורים לאפליקציות וקישורים אוניברסליים משלכם באמצעות Firebase Hosting, כדי להחליף את החלק הזה בפונקציונליות שמסופקת על ידי Firebase Dynamic Links. זאת במסגרת העברת הנתונים מ-Firebase Dynamic Links לפתרון החדש להעברת נתונים של קישורים לאפליקציות וקישורים אוניברסליים.

כדי להשלים את ההעברה, תצטרכו את הפרטים הבאים:

  • הקישורים הדינמיים ב-Firebase שרוצים להעביר
  • פרמטרים של כתובות URL של קישורי עומק שנכללים בקישורים הדינמיים
  • הדומיין שבו אתם מתכננים להשתמש כדי להחליף את הדומיין הקודם של Firebase Dynamic Links (אם רלוונטי)

אתם יכולים להשתמש במדריך לייצוא מטא-נתונים של קישורים דינמיים כדי לייצא את המטא-נתונים הקיימים של הקישורים ולקבל את המידע שמפורט למעלה.

סקירה כללית של שלבי ההעברה

  1. הקצאת דומיין חדש (אם אין לכם דומיין שבו אתם רוצים להשתמש) כדי לארח את קובצי ההגדרות של הקישור לאפליקציה או הקישור האוניברסלי באמצעות אירוח ב-Firebase.

  2. יוצרים ומארחים את קובצי ההגדרות של קישור לאפליקציה / קישור אוניברסלי בדומיין האירוח.

  3. יוצרים קישורי אפליקציות חדשים או קישורים אוניברסליים שתואמים לסכמת קישורי העומק שבה נעשה שימוש בקישורים הדינמיים של Firebase.

  4. מעדכנים את האפליקציות ל-Android או ל-iOS ואת קוד האפליקציה כדי לקבל קישורי עומק.

  5. בדיקת השילובים של קישורי אפליקציות וקישורים אוניברסליים.

  6. מחליפים את הקישורים הדינמיים שפורסמו או שותפו ב-Firebase בקישורי אפליקציות ובקישורים אוניברסליים.

השלב הראשון יהיה משותף לתהליכי ההעברה של קישורים לאפליקציות ושל קישורים אוניברסליים. ההמשך משתנה בהתאם לפלטפורמה, לכן צריך לעבור לחלק הרלוונטי במדריך שלמטה בהתאם לפלטפורמה שרוצים להעביר קודם.

בחירת דומיין

השלב הראשון הוא לבחור דומיין שבו רוצים להשתמש בקישורי אפליקציות או בקישורים אוניברסליים. זה יהיה הדומיין שישמש לקישורים החדשים שתשתפו עם המשתמשים.

אם משתמשים ב-Firebase Hosting, המערכת מקצה באופן אוטומטי וללא עלות תת-דומיינים של פרויקטים בפורמט your-project-domain.web.app או your-project-domain.firebaseapp.com. אפשר גם להשתמש בדומיין מותאם אישית עם או בלי Firebase Hosting כדי לארח את קובצי ההגדרות של קישור לאפליקציה או קישור אוניברסלי.

הגדרת אירוח ב-Firebase

בשלב הבא, צריך להגדיר את מופע Firebase Hosting.

בסיום ההגדרה של מופע Firebase Hosting, יהיה לכם דומיין שדומה ל-your-project-domain.web.app, או דומיין מותאם אישית אם תרצו.

כדי להשתמש בקישורים לאפליקציות, צריך לארח קובץ הגדרות שעוזר ליצור שיוך מאובטח בין הדומיין שבו נעשה שימוש בקישורים לבין האפליקציה. בקישורים לאפליקציות, זהו הקובץ assetlinks.json.

שלבים ליצירה ולאירוח של הקובץ assetlinks.json

קובץ assetlinks.json מאפשר לנו לספק רשימה של אפליקציות מורשות שיכולות לטפל בתוכן של דומיין האינטרנט שבו נשתמש בקישורי האפליקציה שלנו. קובץ assetlinks.json עצמו צריך להתארח בתיקיית הבסיס של דומיין האינטרנט בנתיב: /.well-known.

כדי להשלים את ההגדרה הזו, פועלים לפי השלבים הבאים:

  1. יוצרים את התיקייה .well-known מתחת לתיקייה הציבורית בספריית הבסיס של Firebase Hosting.

  2. יוצרים קובץ בשם assetlinks.json בתיקייה .well-known.

  3. מעתיקים את התוכן הבא לקובץ 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 – מתייחס ל-applicationId שמוצהר בקובץ 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 באמצעות keytool.

    הוראות נוספות לביצוע השלב הזה מופיעות בקטע הזה במאמר בנושא קישורים לאפליקציות.

    אפשר גם להשתמש בכלי העזר לקישורים לאפליקציות ב-Android Studio כדי ליצור את התוכן של הקובץ assetlinks.json ולהגדיר את האפליקציה לטיפול בקישורים לאפליקציות.

  4. מעדכנים את קובץ firebase.json כדי להוסיף את הקובץ לאינדקס לצורך אירוח.

    "headers": [
      {
        "source": "/.well-known/assetlinks.json",
        "headers": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ]
      }
    ]
    
  5. עכשיו, אחרי שהקובץ assetlinks.json נמצא במקום, מריצים את הפקודה firebase deploy כדי לארח את השינויים.

    שימו לב: כדי להריץ את פקודת הפריסה שלמעלה, צריך להתקין את Firebase CLI.

    firebase deploy --only hosting
    
  6. כדי לאמת את הקובץ assetlinks.json, עוברים אל https://your-project-domain.web.app/.well-known/assetlinks.json

בשלב הזה, תיצרו מחדש את קישורי העומק מהקישורים הדינמיים ב-Firebase באמצעות כתובות URL רגילות של קישורי עומק שתואמות לדומיין החדש שיצרתם לקישורי האפליקציה.

לדוגמה, נניח שיש לכם את הקישור הדינמי הבא ב-Firebase:

דוגמה לקישור דינמי
שם קישור ברוכים הבאים אל Example.com
קישור עומק https://example.web.app/welcome
אפליקציית Android com.example.android
אפליקציית Apple 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, פרמטרים של קישורי עומק וערכים של קישורי עומק שהועברו:

קישור מקוצר פרמטר של קישור עומק קישור עומק שהועבר
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.

השלב הבא אחרי בחירת דומיין, בחירת סכימת קישור עמוק והעברת הקישורים הדינמיים ב-Firebase לקישורים לאפליקציה הוא עדכון של אפליקציית Android ושל קוד האפליקציה כדי לקבל את הקישורים העמוקים החדשים.

מומלץ לפעול לפי כל ההוראות במסמכי התיעוד בנושא קישורים לאפליקציה או במדריך ל-Android Studio כדי להגדיר את האפליקציה לטיפול בקישורי עומק. השלבים העיקריים כוללים:

  1. זיהוי הפעילויות שצריכות לטפל בקישורי העומק המתאימים
  2. הוספת מסנן Intent לפעילויות האלה בקובץ AndroidManifest.xml
  3. קבלת קישור העומק בקוד האפליקציה של הפעילויות

נניח שרציתם להשתמש ב-MainActivity כדי לטפל בחלק מהקישורים העמוקים שלכם. כדי לעשות זאת, צריך להוסיף את מסנן ה-Intent הבא ל-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. מדריך לייצוא מטא-נתונים של קישורים דינמיים

כדי להשתמש בקישורים אוניברסליים, צריך לארח קובץ הגדרה שעוזר ליצור שיוך מאובטח בין הדומיין שבו משתמשים בקישורים לבין האפליקציה. בקישורים אוניברסליים, זהו קובץ apple-app-site-association (שנקרא גם קובץ AASA).

שלבים ליצירה ולאירוח של קובץ apple-app-site-association

קובץ ה-AASA מאפשר לנו לספק רשימה של אפליקציות מורשות שיכולות לטפל בתוכן של דומיין האינטרנט שבו נשתמש לקישורים האוניברסליים שלנו. קובץ ה-AASA עצמו צריך להתארח בתיקיית הבסיס של דומיין האינטרנט בנתיב: ‎/.well-known.

כדי להשלים את ההגדרה הזו, פועלים לפי השלבים הבאים:

  1. יוצרים את התיקייה .well-known מתחת לתיקייה הציבורית בספריית הבסיס של Firebase Hosting.

  2. יוצרים קובץ בשם apple-app-site-association בתיקייה ‎.well-known.

  3. מעתיקים את התוכן הבא לקובץ apple-app-site-association, תוך שימת לב למשמעות של כל שדה שמופיע בהמשך:

    {
      "applinks": {
        "apps": [],
        "details": [
          {
            "appID": "$TEAM_ID.com.firebase.UniversalLinks",
            "paths": [
              "NOT /_/*",
              "/*"
            ]
          }
        ]
      }
    }
    
    • ‫‎$TEAM_ID.BundleId – השם המלא של האפליקציה שקיבלה הרשאה לטפל בקישורים
  4. מעדכנים את קובץ firebase.json כדי להוסיף את הקובץ לאינדקס לצורך אירוח.

    "headers": [
      {
        "source": "/.well-known/apple-app-site-association",
        "headers": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ]
      }
    ]
    
  5. עכשיו, אחרי שיצרנו את קובץ ה-AASA, מריצים את הפקודה firebase deploy כדי לארח את השינויים.

  6. כדי לאמת את קובץ ה-AASA, עוברים אל https://your-project-domain.web.app/.well-known/app-app-site-association

בשלב הזה, תיצרו מחדש את קישורי העומק מתוך הקישורים הדינמיים ב-Firebase באמצעות כתובות URL רגילות של קישורי עומק שתואמות לדומיין החדש שיצרתם עבור הקישורים האוניברסליים.

לדוגמה, נניח שיש לכם את הקישור הדינמי הבא ב-Firebase:

דוגמה לקישור דינמי
שם קישור ברוכים הבאים אל Example.com
קישור עומק https://example.web.app/welcome
אפליקציית Android com.example.android
אפליקציית Apple 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, פרמטרים של קישורי עומק וערכים של קישורי עומק שהועברו:

קישור מקוצר פרמטר של קישור עומק קישור עומק שהועבר
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.

אחרי שבוחרים דומיין, בוחרים סכימה של קישורי עומק ומעבירים את הקישורים הדינמיים ב-Firebase לקישורים אוניברסליים, השלב הבא הוא לעדכן את אפליקציית iOS ואת קוד האפליקציה כדי לקבל את קישורי העומק החדשים.

מומלץ לפעול לפי המסמכים המלאים בנושא קישורים אוניברסליים כדי להגדיר את האפליקציה לטיפול בקישורי עומק, אבל השלבים העיקריים כוללים:

  1. מעדכנים את הגדרות הפרויקט כדי לאפשר לאפליקציה לטפל בקישורים עמוקים מהדומיין החדש שיצרתם

  2. קבלת קישור העומק בקוד האפליקציה

כדי לעדכן את הגדרות הפרויקט כך שהאפליקציה תוכל לטפל בקישורים עמוקים, צריך להוסיף דומיין משויך נוסף לפרויקט ב-Xcode עבור הדומיין שבו אתם מתכננים לארח את הקובץ apple-app-site-associate.

כדי לעשות זאת, אפשר:

  1. פתיחת Xcode
  2. בחירת הפרויקט בסרגל הניווט בקבצים
  3. איך עוברים לכרטיסייה 'חתימה ויכולות' בהגדרות הפרויקט
  4. גוללים למטה לקטע 'דומיינים משויכים'.
  5. לוחצים על הלחצן + כדי להוסיף את הדומיין הנוסף לפרויקט בפורמט applinks:.

לבסוף, צריך לעדכן את קוד האפליקציה כדי שיהיה אפשר לקבל את קישורי העומק הנכנסים.

כדי לעשות את זה, קודם מעדכנים את הקובץ 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)
}

הקוד שלמעלה מבטל את השיטה של קריאה חוזרת (callback) של הקישור האוניברסלי ומתעד את כתובת ה-URL של קישור העומק אם היא קיימת.

עכשיו נקרא לאותה method‏ showReceivedUrl מהמחלקה SceneDelegate, כי אם האפליקציה כבר פתוחה כשהמשתמש לוחץ על הקישור האוניברסלי, הקריאה החוזרת (callback) של הקישור האוניברסלי בתוך SceneDelegate היא זו שמופעלת.

func scene(_ scene: UIScene, continue userActivity: NSUserActivity) {
  AppDelegate.showReceivedUrl(userActivity: userActivity)
}

כדי לבדוק את הקישורים האוניברסליים שיצרתם, אתם יכולים להריץ את האפליקציה במכשיר פיזי או בסימולטור.

תצטרכו ליצור קישור שאפשר ללחוץ עליו באמצעות הדומיין שהוגדר לקישורי Universal Links, ואז ללחוץ על הקישור הזה כדי לוודא שהוא נפתח באפליקציה ומעביר אתכם למסך הרצוי באפליקציה.

תמיכה במודעות באנר חכמות לקידום אפליקציות

מומלץ מאוד להשתמש במודעות באנר חכמות לקידום אפליקציות כדי לספק למשתמשים חוויה דומה לזו של קישורים דינמיים ב-Firebase.

באמצעות באנרים חכמים לקידום אפליקציות, המשתמשים יועברו אל דף האפליקציה שלך ב-App Store אם האפליקציה עדיין לא מותקנת במכשיר שלהם. אפשר גם להגדיר פרמטר שיעבור לאפליקציה אחרי שהיא תורד ותותקן, כדי שהמשתמשים יוכלו להמשיך את התהליך שהתחילו. אם האפליקציה כבר מותקנת, היא תיפתח ותעביר את הפרמטר לאפליקציה כדי לעזור למשתמש לנווט לתוכן המתאים בהתאם לבאנר האפליקציה החכם שעליו הוא לחץ.

השלב האחרון בהעברה יהיה להחליף את הקישורים הדינמיים שפרסמתם או ששיתפתם ב-Firebase בקישורים אוניברסליים, בכל מקום שאפשר, ולהמשיך להשתמש בקישורים אוניברסליים גם בעתיד.

השלמת השלב הזה תלויה במיקום ובאופן הפרסום של הקישורים הדינמיים של Firebase.

כדי לעזור לכם לעקוב אחרי קישורים דינמיים קיימים ב-Firebase שצריך להעביר, נפרסם מדריך בנושא ייצוא המטא-נתונים של הקישורים המקוצרים מקישורים דינמיים ב-Firebase. כדאי לעיין במסמך השאלות הנפוצות בנושא הוצאה משימוש של קישורים דינמיים כדי לקבל עדכונים נוספים.