התכונה 'מעברים מסונכרנים בין אפליקציות' היא תכונה ב-Android 9 שמשפרת את הארכיטקטורה הקיימת של מעברים בין אפליקציות. כשמשתמש פותח אפליקציה, סוגר אותה או עובר בין אפליקציות, התהליך SystemUI או Launcher (מסך הבית) שולח בקשה לשליטה באנימציה פריים אחר פריים, עם סנכרון מובטח בין אנימציות של תצוגות לאנימציות של חלונות. כש-SystemUI או Launcher מציירים פריים חדש כחלק מאנימציה, הם מבקשים טרנספורמציה שונה על פני השטח של האפליקציה המונפשת, שקובעת איך האפליקציה מורכבת על המסך, ומסמנים את הבקשה, טרנזקציית פני שטח, לסנכרון עם הפריים שהם מציירים כרגע.
האפשרות הזו מאפשרת אנימציות חדשות למעבר בין אפליקציות, שלא אפשריות ב-Android מגרסה 8.x ומטה. לדוגמה, אנימציית הפעלת האפליקציה יכולה להפוך סמלים במסך הבית למשטח האפליקציה בצורה חלקה, ואנימציית הפעלת ההתראה יכולה להפוך התראות למשטח האפליקציה.
דוגמאות ומקור
בהמשך מפורטים מקורות מידע נוספים על התכונה הזו.
ActivityOptions.makeRemoteAnimationRemoteAnimationAdapterRemoteAnimationRunnerActivity.registerRemoteAnimations
דוגמה להטמעה של אנימציית ההפעלה של ההתראה זמינה בActivityLaunchAnimator.kt.
הטמעה
אפשר להטמיע את התכונה הזו בממשק המשתמש של מרכז האפליקציות או של המערכת לפי הצורך, או להשתמש בהטמעה של AOSP ב-SystemUI/Launcher3.
אימות
כדי לאמת את הביצועים של האנימציות, צריך למדוד את הביצועים של אפליקציית הבקרה, כלומר SystemUI או Launcher, במהלך האנימציות, כפי שמתואר במאמר בדיקת ביצועי ממשק המשתמש.