הטמעת מעברים מסונכרנים בין אפליקציות

'מעבר משולב בין אפליקציות' היא תכונה ב-Android 9 שמשתפרת את הארכיטקטורה הקיימת של המעבר בין אפליקציות. כשמשתמש פותח, סוגר או עובר בין אפליקציות, התהליך של SystemUI או של Launcher (מסך הבית) שולח בקשה לשלוט באנימציה פריים אחרי פריים, עם סנכרון מובטח בין אנימציות התצוגה לבין אנימציות החלון. כשמערכת SystemUI או Launcher מציירים פריים חדש כחלק מאנימציה, הם מבקשים טרנספורמציה שונה על פני האפליקציה שמציגה את האנימציה, שמגדירה את אופן הרכבת האפליקציה במסך, ומסמנים את הבקשה, עסקה של פני השטח, כדי שתתבצע סנכרון עם הפריים שהוא מצייר כרגע.

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

דוגמאות ומקור

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

הטמעת עזרה של אנימציית ההפעלה של ההתראות מפורטת במאמר ActivityLaunchAnimator.kt.

הטמעה

אפשר להטמיע את התכונה הזו ב-Launcher/System UI לפי הצורך, או להשתמש בהטמעה של AOSP ב-SystemUI/Launcher3.

אימות

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