از 27 مارس 2025، توصیه می کنیم از android-latest-release به جای aosp-main برای ساختن و کمک به AOSP استفاده کنید. برای اطلاعات بیشتر، به تغییرات AOSP مراجعه کنید.
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
Synchronized App Transitions یک ویژگی در اندروید 9 است که معماری انتقال برنامه موجود را بهبود می بخشد. هنگامی که کاربر برنامهها را باز میکند، میبندد یا بین برنامهها جابهجا میشود، فرآیند SystemUI یا Launcher (صفحه اصلی) درخواستی برای کنترل انیمیشن فریم به فریم با همگامسازی تضمین شده بین انیمیشنهای مشاهده و انیمیشنهای پنجره ارسال میکند. هنگامی که SystemUI یا Launcher یک فریم جدید را به عنوان بخشی از یک انیمیشن ترسیم می کند، یک تبدیل متفاوت را در سطح برنامه متحرک درخواست می کند که نحوه ترکیب برنامه را در صفحه تعیین می کند و درخواست، یک تراکنش سطحی را برای همگام سازی با فریمی که در حال حاضر ترسیم می کند، علامت گذاری می کند.
این امکان ایجاد انیمیشنهای انتقال برنامه جدید را فراهم میکند که در Android 8.x و پایینتر امکانپذیر نیست. به عنوان مثال، انیمیشن راهاندازی برنامه میتواند نمادهای صفحه اصلی را به طور یکپارچه به سطح برنامه تبدیل کند و انیمیشن راهاندازی اعلانها میتواند اعلانها را به سطح برنامه تبدیل کند.
شما می توانید این ویژگی را در Launcher/System UI در صورت نیاز پیاده سازی کنید یا می توانید از پیاده سازی AOSP در SystemUI/Launcher3 استفاده کنید.
اعتبار سنجی
برای اعتبارسنجی عملکرد انیمیشنها، عملکرد برنامه کنترلکننده، یعنی SystemUI یا Launcher را در طول انیمیشنها همانطور که در تست عملکرد رابط کاربری توضیح داده شده است، اندازهگیری کنید.
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# Implement synchronized app transitions\n\nSynchronized App Transitions is a feature in Android 9\nthat enhances the existing app transition architecture. When a user opens,\ncloses, or switches between apps, the SystemUI or Launcher (homescreen) process\nsends a request to control the animation frame-by-frame with guaranteed\nsynchronization between view animations and window animations. When the SystemUI\nor Launcher draws a new frame as part of an animation, it requests a different\ntransform on the animating app surface that determines how the app is composed\non the screen, and marks the request, a surface transaction, to be synchronized\nwith the frame it's currently drawing.\n\nThis allows for new app transition animations that are not possible on Android\n8.x and lower. For example, the\n[app launch animation](/static/docs/core/display/images/app-launch-animation.mp4)\ncan transform homescreen icons seamlessly into the app surface and the\n[notification launch animation](/static/docs/core/display/images/notification-launch-animation.mp4)\ncan transform notifications into the app surface.\n\nExamples and source\n-------------------\n\nSee the following references for this feature.\n\n- [`ActivityOptions.makeRemoteAnimation`](https://android.googlesource.com/platform/frameworks/base/+/33a701a55c28dd20390acee1ba7881a500830d7d/core/java/android/app/ActivityOptions.java#843)\n- [`RemoteAnimationAdapter`](https://android.googlesource.com/platform/frameworks/base/+/android16-release/core/java/android/view/RemoteAnimationAdapter.java)\n- [`RemoteAnimationRunner`](https://android.googlesource.com/platform/frameworks/base/+/android16-release/core/java/android/view/IRemoteAnimationRunner.aidl)\n- [`Activity.registerRemoteAnimations`](https://android.googlesource.com/platform/frameworks/base/+/f84e2f60fec6f6d2ecfb3b90ddf075101f4b902f/core/java/android/app/Activity.java#7672)\n\nFor a reference implementation for the notification launch animation, see\n[`ActivityLaunchAnimator.kt`](https://android.googlesource.com/platform/frameworks/base/+/android16-release/packages/SystemUI/animation/src/com/android/systemui/animation/ActivityLaunchAnimator.kt).\n\nImplementation\n--------------\n\nYou can implement this feature on Launcher/System UI as required or you can use\nthe AOSP implementation in SystemUI/Launcher3.\n| **Note:** This feature increases the load on the GPU and CPU during animations.\n\nValidation\n----------\n\nTo validate the performance of the animations, measure the performance of the\ncontrolling app, i.e. SystemUI or Launcher, during the animations as described\nin\n[Test UI performance](https://developer.android.com/training/testing/performance)."]]