מעבר מהזמנות ב-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, ושירות הקצה העורפי של ההזמנות יתחיל להחזיר תגובות שגיאה כשמבצעים קריאות לשליחה ולקבלה של קישור להזמנה. ערכות ה-SDK הנוכחיות כוללות טיפול בשגיאות כדי להבטיח תרחישי כשל נעימים בתשובות מהשרת, כך שהמשתמשים יוכלו להמשיך להשתמש באפליקציה בלי קריסה. עם זאת, מומלץ להפסיק להשתמש ב-Firebase Invites ולעבור לפתרון חלופי באמצעות Firebase Dynamic Links עם פתרון שיתוף מותאם אישית.

כך עושים זאת:

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

פיתוח פתרון לשיתוף

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

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