מעבר מהזמנות ב-Firebase לקישורים דינמיים באמצעות שיתוף בהתאמה אישית

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

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

מה המשמעות של השינוי ואיך הוא משפיע עליי?

החל מ-24 בינואר 2020, המשתמשים שלכם לא יוכלו יותר לשלוח או לקבל Firebase Invites, ושירות ה-Backend של ההזמנות יתחיל להחזיר תגובות שגיאה כשמתבצעות שיחות לשליחה ולקבלה של קישור להזמנה. ערכות ה-SDK הנוכחיות כוללות טיפול בשגיאות כדי להבטיח תרחישי כשל חלקים לתגובות השרת האלה, כך שהמשתמשים יוכלו להמשיך להשתמש באפליקציה בלי שהיא תקרוס. עם זאת, מומלץ להפסיק להשתמש ב-Firebase Invites ולעבור לפתרון חלופי באמצעות Firebase Dynamic Links עם פתרון שיתוף בהתאמה אישית.

כך עושים זאת:

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

בניית פתרון לשיתוף

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

ב-Android, פתרון פשוט שכולל שיתוף של SMS ואימייל, וגם של אפליקציות פופולריות אחרות של רשתות חברתיות ואפליקציות הודעות, הוא שימוש ב-Intent כללי עם פעולה שמוגדרת כ-Intent.ACTION_SEND. האפשרות הזו מספקת דרך נוחה לשתף נתונים מהאפליקציה עם כל אפליקציה שהמשתמש התקין שיכולה לטפל בכוונת שיתוף.

משהו דומה לדוגמה הבאה אמור לעבוד כאן (מומלץ להשתמש במשאבי מחרוזות קבועים בקוד שלכם):

Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "Here's a new lesson for" +
        " learning more Miwok vocabulary:\n\n" + dynamicLink);
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "Let's Learn Miwok!");
sendIntent.setType("text/plain");
startActivity(Intent.createChooser(sendIntent,
        getResources().getText(R.string.send_to)));

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

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

שיתוף ב-Android

מפתחי iOS יכולים להשתמש ב-UIActivityViewController ולהעביר את הקישור שנוצר כחלק מהנתונים אל ה-VC המותאם אישית. השיטה הזו תספק תהליך שיתוף שדומה למסכים הבאים:

שיתוף ב-iOS

קבלת Dynamic Link באפליקציה

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

ב-Android, התהליך הזה נשאר זהה, כך שלא תצטרכו לשנות הרבה. ההבדל היחיד הוא שבלי Firebase Invites, לא יהיה יותר מזהה הזמנה, ולכן תצטרכו להסיר את הקריאה לחילוץ מזהה ההזמנה באמצעות FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(data), אם האפליקציה שלכם מבצעת את הקריאה הזו. פרטים נוספים על הרכיב הזה זמינים במדריך בנושא קבלת קישורים דינמיים באפליקציית Android.

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

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

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