תרגול הכרת תודה עשוי להפחית את הסימפטומים של דיכאון וחרדה, ולשפר את הבריאות הנפשית ואת שביעות הרצון מהחיים¹. תרגול עקבי של הכרת תודה עשוי להוביל לשיפורים מתמשכים שנמשכים חודשים². אפליקציית המיינדפולנס Gratitude מעודדת עקביות באמצעות יומן יומי קצר, הצהרות חיוביות ולוחות חזון. האפליקציה הורדה יותר מ-6 מיליון פעמים, קיבלה 150 אלף דירוגים של 5 כוכבים ונרשמו בה 100 מיליון רשומות ביומן.
המפתחים Divij Gupta ו-Narendra Aanjna פיתחו ווידג'טים לכל אחד מהמסלולים העיקריים להמרת משתמשים באפליקציה שלהם. המטרה שלהם הייתה להגיע למשתמשים ברגעים היומיומיים שלהם בלי לדרוש את התקורה של סשן מלא באפליקציה.
הצוות הציג הנחיות אינטראקטיביות לכתיבת יומן, הצהרות חיוביות, תמונות של לוחות חזון ומדדים ישירות במסך הבית של המשתמשים, וכך הקל על הכתיבה היומית של יומן. הצוות דיווח על עלייה של 25% בשימור בקרב משתמשי הווידג'טים ועל כ-1,000 רשומות שבועיות ביומן שנוצרו באמצעות הווידג'טים. העלייה הזו בנאמנות המשתמשים מתורגמת לתוצאות בריאותיות מוחשיות עבור המשתמשים: יצירת הרגלים עקביים שתומכים ברווחה נפשית לטווח ארוך.
"הווידג'טים עזרו לנו להפוך את האפליקציה לחלק משגרת היום של המשתמשים, כי הם מספקים השראה מהירה, תזכורות ומחשבות ישירות במסך הבית. השינוי הזה הגביר את רמת המעורבות של המשתמשים ואיפשר להם לשמור על עקביות בתרגול המיינדפולנס שלהם". – דיוויג' גופטה
האתגר: מודרניזציה בלי לפגוע בשיעור השמירה
ההשפעה של הווידג'טים הייתה ברורה, אבל ההטמעה המקורית של RemoteViews מבוססת ה-XML של Gratitude יצרה חוב טכני. ככל שמערכת העיצוב של האפליקציה התפתחה לכיוון Material 3, היה קשה יותר ויותר להתאים את הווידג'טים מדור קודם לממשק המשתמש המודרני. כל עדכון חזותי דרש תקורה ידנית של XML ופתרונות עקיפים שבירים, מה שהאט את מהירות הפיתוח.
הפתרון, חלק 1: מעבר מ-XML ל-Jetpack Glance
כדי לחדש את הווידג'טים, הצוות השתמש ב-Jetpack Glance.
הם קודם התייעצו עם דף העיצוב בנושא ווידג'טים ב-Android ועם פריסות קנוניות של ווידג'טים כדי להבין מהן השיטות המומלצות להצגת מידע במרחב מוגבל.
לאחר מכן הם העבירו את חבילת הווידג'טים שלהם ל-Jetpack Glance. המסגרת ההצהרתית הזו אפשרה למפתחים לעבור משלב התכנון לשלב המסירה בפרק זמן של פחות מחודש, ולחסוך כ-50% מזמן הפיתוח. בנוסף, הם נהנו משני יתרונות נוספים:
- החלפת פריסות XML מגבילות בקוד הצהרתי הקלה על קריאת בסיס הקוד ועל התחזוקה שלו, וצמצמה את המאמץ של המפתחים.
- הספרייה Jetpack Glance אפשרה לצוות להטמיע בקלות רבה יותר צבעים דינמיים, שינוי גודל גמיש ואפשרויות הגדרה מורחבות. התכונות האלה מבטיחות שהווידג'טים ישתלבו בצורה חלקה בפריסה הייחודית של מסך הבית של המשתמש.
קובץ ה-GIF הבא מציג שני ווידג'טים של Gratitude ושינוי גודל דינמי:
ממשק המשתמש של Glance היה פשוט יותר, אבל הצוות ציין שחשוב גם לבצע בדיקות בלאנצ'רים שונים של יצרני ציוד מקורי (OEM) כדי לוודא שהפריסה תהיה עקבית בכל המכשירים.
הצוות גם הטמיע תצוגות מקדימות של ווידג'טים שנוצרו כדי שהמשתמשים יוכלו לראות תצוגות מקדימות מותאמות אישית. הם ציינו שהבדיקה של תצוגות מקדימות שנוצרו יכולה להיות איטית, כי התצוגות המקדימות מוגבלות כדי לחסוך בסוללה. כדי לעקוף את ההגבלה על קצב יצירת הבקשות לצורך בדיקה, משתמשים בפקודת adb:
adb shell device_config put systemui generated_preview_api_reset_interval_ms 0
כל המאמצים האלה הפכו את הווידג'ט Gratitude לאיכותי ולייחודי.
הפתרון, חלק 2: קידום ווידג'טים חדשים באפליקציה
לאחר מכן, המפתחים השתמשו בהצמדת ווידג'טים באפליקציה כדי להגדיל את פוטנציאל החשיפה של הווידג'טים ואת מספר ההתקנות שלהם. בקשה מהמשתמשים להתקין ווידג'טים ברגע רלוונטי בהקשר בתוך האפליקציה עוזרת למשתמשים למצוא את הווידג'טים שלהם בלי הצורך לעבור דרך כלי הבחירה של הווידג'טים במערכת. קובץ ה-GIF הבא מציג את הגיליון התחתון של Gratitude להוספת ווידג'טים מתוך האפליקציה:
בנוסף, הצוות ביצע רפקטורינג בחבילות של הווידג'טים, מה שגרם לשינוי בנתיבי המקלט של הווידג'טים ולמחיקה שלהם ממסכי הבית של המשתמשים. הם השתמשו בדגלי משתמשים שנשמרו בעבר כדי לזהות משתמשים בווידג'טים, והציגו עוד הנחיה requestPinGlanceAppWidget שבה הוזמנו משתמשים בווידג'טים להשתמש בווידג'טים החדשים והמודרניים.
טיפ למפתחים: כדי לשמור על התקנות הווידג'טים במהלך המעבר מ-RemoteViews ל-Jetpack Glance, צריך לוודא שרכיב GlanceAppWidgetReceiver משתמש באותו שם מחלקה ובאותה חבילה כמו רכיב AppWidgetProvider הקודם במניפסט של Android. אם נדרש שם מחלקה חדש או מיקום חבילה חדש, כדאי לפעול כמו באפליקציית Gratitude ולהשתמש בהצמדה בתוך האפליקציה כדי לעזור למשתמשים לשחזר את הווידג'טים שלהם.
האסטרטגיה עובדת, כי 10% מהמשתמשים הפעילים היומיים הכוללים משתמשים בווידג'טים.
סיכום
הסיפור הזה על הכרת תודה מראה שאפשר להשתמש בווידג'טים ככלים ליצירת הרגלים. הצוות הטמיע פעולות מהירות שמאפשרות למשתמשים לבצע רפלקציה עצמית ישירות ממסך הבית, וכך שיפר את נאמנות המשתמשים. חברת Gratitude השתמשה ב-Jetpack Glance כדי לצמצם את החוב הטכני שלה ולעדכן את הווידג'טים שלה, ועודדה את המשתמשים להוסיף ווידג'טים באפליקציה שלה.
"חוויית השימוש שלנו ב-Jetpack Glance הייתה מצוינת. הגישה שמבוססת על Compose מרגישה הרבה יותר מודרנית וגמישה, והיא תואמת לאופן שבו אנחנו בונים את שאר ממשק המשתמש שלנו היום. הוא מאפשר לנו להציג פריסות של ווידג'טים בצורה טבעית יותר, לעשות שימוש חוזר ברכיבי Compose מוכרים ולבצע שינויים בממשק המשתמש הרבה יותר מהר. הרבה מהמגבלות של ממשק המשתמש שנתקלנו בהן בעבר עם RemoteViews כבר לא רלוונטיות, ולכן היה לנו קל יותר ליצור ווידג'טים שתואמים יותר לעיצוב ולחוויה של האפליקציה שלנו". – Divij Gupta
תחילת העבודה
כדי להתחיל להשתמש ב-Jetpack Glance וללמוד על הטכנולוגיות שמוזכרות בפוסט הזה, אפשר לעיין במדריכים הבאים:
- סקירה כללית של Jetpack Glance
- דף העיצוב של ווידג'טים ב-Android
- פריסות קנוניות של ווידג'טים
- תצוגות מקדימות של ווידג'טים שנוצרו על ידי AI
- רמות איכות של ווידג'טים
- הצמדת ווידג'טים באפליקציה
- צבעים דינמיים
- שינוי הגודל
- פעילויות שקשורות להגדרות
מקרים נוספים לדוגמה של שימוש בווידג'טים:
- אפליקציית אנשי הקשר של Google יצרה ווידג'ט חדש ב-25% מהר יותר באמצעות Jetpack Glance
- SoundCloud משתמשת ב-Jetpack Glance כדי ליצור ווידג'ט של טראקים שאהבתם תוך שבועיים בלבד
1: Diniz, G., Korkes, L., Tristão, L. S., Pelegrini, R., Bellodi, P. L., & Bernardo, W. מ. (2023). ההשפעות של התערבויות שקשורות להכרת תודה: סקירה שיטתית ומטא-אנליזה. einstein (Sao Paulo)., 21, eRW0371. https://doi.org/10.31744/einstein_journal/2023RW0371
2: Bohlmeijer, E., Kraiss, J., Schotanus-Dijkstra, M., & ten Klooster, P. (2022). Gratitude as mood mediates the effects of a 6-weeks gratitude intervention on mental well-being: post hoc analysis of a randomized controlled trial. חזית. Psychol., 12, 799447. https://doi.org/10.3389/fpsyg.2021.799447
-
מקרים לדוגמהUltrahuman היא חברת סטארט-אפ בתחום טכנולוגיות הבריאות לצרכן, שמספקת למשתמשים תובנות יומיות לגבי איכות החיים שלהם על סמך נתונים ביומטריים ממכשירים לבישים של החברה, כמו RING Air ומד הגלוקוז הרציף (CGM) M1 Live.
Amrit Sanjeev, Trevor Johns • משך הקריאה: 2 דקות -
מקרים לדוגמהירידות בביצועים קשות מאוד לשחזור, ולכן הן מהוות צוואר בקבוק משמעותי למפתחים של אפליקציות לנייד.
Alice Yuan, Arti Arutiunov, Nikita Ogorodnikov • משך הקריאה: 4 דקות -
מקרים לדוגמהלאחרונה, אפליקציית FotMob חוותה את העלייה הגדולה ביותר שלה ביום אחד ב-Wear OS בקרב הקהל שהתקין אותה ב-5 השנים האחרונות, פי 2-3 מהממוצע היומי. הסוד? תהליך התקנה פשוט בין מכשירים שעוזר למשתמשים לגלות את האפליקציה שלהם ל-Wear OS ישירות מהטלפון.
Garan Jenkin • משך הקריאה: 3 דקות
רוצים לקבל טיפים עדכניים לפיתוח Android ישירות לאימייל כל שבוע?