肇庆企业网站建设,建设ipv6网站,wordpress登陆网址,深圳建设银行分行网站目录
初始化流程
点击Recent键流程
RecentsActivity 显示流程
RecentsModel 获取数据管理类
RecentsActivity 布局
已处于Recent界面时
点击recent 空白区域
点击返回键
recent组件配置 Android10 Recent 功能由 System UI#xff0c;Launcher共同实现。 初始化流程 …目录
初始化流程
点击Recent键流程
RecentsActivity 显示流程
RecentsModel 获取数据管理类
RecentsActivity 布局
已处于Recent界面时
点击recent 空白区域
点击返回键
recent组件配置 Android10 Recent 功能由 System UILauncher共同实现。 初始化流程
Android10.0 最近任务Recents功能分析_android 最近任务-CSDN博客 TouchInteractionService.onOverviewToggle
OverviewCommandHelper.onOverviewToggle
RecentsActivityCommand registerAndStartActivity
OverviewComponentObserver.getOverviewIntent mListener.registerAndStartActivity(mOverviewComponentObserver.getOverviewIntent(), 最终启动逻辑。 引用别人的图 点击Recent键流程 Recents(SystemUI 中).toggleRecentApps
TouchInteractionService(Launcher) . onOverviewToggle
OverviewCommandHelper .onOverviewToggle
RecentsActivityCommand registerAndStartActivity
去启动配置的RecentsActivity RecentsActivity 显示流程
RecentsActivity. setupViewsRecentsView.onAttachedToWindow.updateTaskStackListenerStatereloadIfNeededapplyLoadPlan在applyLoadPlan()内部主要执行了四项工作unloadVisibleTaskData()将现有visible的task数据进行置空根据task数量(首次进入)进行addViewTaskView通过mTaskViewPool的getView()进行获取最后添加clearAllButton对添加完的TaskView进行bind()操作将对应的task存在TaskView内部类似setTag()功能执行resetTaskVisuals()来刷新加载数据loadVisibleTaskDataTaskView.onTaskListVisibilityChangedSnapshotView.setThumbnail 加载缩略图setIcon 加载 icon RecentsModel 获取数据管理类
RecentsModel继承了TaskStackChangeListener在构造方法内部初始化了RecentsTaskList、TaskIconCache和TaskThumbnailCache实例注册了registerTaskStackListener回调分别来获取最近任务列表、获取Task对应的Icon和
RecentsTaskList获取最近任务列表TaskIconCache获取Task对应的icon并进行缓存TaskThumbnailCache获取Task对应的thumbnailData并进行缓存
与Android8.1不同的是8.1上在获取最近任务列表后会获取任务对应的Thumbnail和Icon最终封装成Task在显示时直接通过Task.thumbnail和Task.icon就可以直接显示11上会通过TaskIconCache和TaskThumbnailCache进行分别存储管理首次显示或有新的任务需要通过TaskIconCache和TaskThumbnailCache执行对应的request去获取并进行cache存储 onTaskStackChangedBackground 数据更新TaskList.getTaskKeysloadTasksInBackgroundActivityManagerWrapper.getInstance().getRecentTasksActivityTaskManager.getRecentTasks RecentsActivity 布局
R.layout.fallback_recents_activity
RecentsRootView
RecentsView 最近应用核心view 已处于Recent界面时
若已进入recent界面
点击recent 空白区域
(RecentsActivity 做最近Activity时)
RecentsView.onTouchEvent
FallbackRecentsView.startHome (Android13)
BaseRecentsActivity.startHome 点击返回键
BaseRecentsActivity.onBackPressed --- startHome recent组件配置 frameworks/base/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java
中通过 context.getString(com.android.internal.R.string.config_recentsComponentName)
判断加载啥RecentActivity.
配置的是com.android.launcher3/com.android.quickstep.RecentsActivity PS
packages/apps/Launcher3/quickstep/recents_ui_overrides 优先