מעבר מהזמנות ב-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 או בכל אחד מפורומי התמיכה הנוספים שלנו.