moveStackToTaskDisplayArea方法详解

基于Android R版本分析

在Android R的move-stack接口中,我们发现在moveStackToTaskDisplayArea方法中,Android R相较于Android S缺少了一个stack.resumeNextFocusAfterReparent();逻辑的调用,而这个逻辑的实现功能,就是恢复当前TaskDisplayArea中Top Task的生命周期状态和visible状态;

在resumeNextFocusAfterReparent()方法中执行了3个逻辑:

  • adjustFocusToNextFocusableTask
  • resumeFocusedStacksTopActivities
  • ensureActivitiesVisible

resumeNextFocusAfterReparent

这个方法是Android R中缺省的一个方法,需要开发者自己在Task类中实现该方法的逻辑(参考Android S);

csharp 复制代码
void resumeNextFocusAfterReparent() {
    adjustFocusToNextFocusableTask("reparent", true /* allowFocusSelf */,
                                   true /* moveDisplayToTop */);
    mRootWindowContainer.resumeFocusedStacksTopActivities();
    mRootWindowContainer.ensureActivitiesVisible(null /* starting */, 0 /* configChanges */,
                                                 !PRESERVE_WINDOWS);
}

上述方法中涉及到的三个方法都是Android R中已经存在的,可以直接调用即可;

adjustFocusToNextFocusableTask

resumeFocusedStacksTopActivities

ensureActivitiesVisible

相关推荐
summerkissyou19871 小时前
Android-view-绘制流程及自定义例子
android·app
常利兵1 小时前
Android “解锁”屏幕方向:APP适配新征程
android·gitee
银河麒麟操作系统2 小时前
银河麒麟桌面操作系统V10SP1(全X86/ARM架构)【进程资源限制与性能优化实践】技术文章
arm开发·性能优化·架构
架构师沉默2 小时前
如果 Spring 没了,Java 会怎么样?
java·后端·架构
文心快码BaiduComate2 小时前
Comate 4.0的自我进化:后端“0帧起手”写前端、自己修自己!
前端·后端·架构
Tadas-Gao2 小时前
从暴力美学到理性重构:Transformer架构的黄昏与后AI时代的新曙光
人工智能·深度学习·架构·大模型·transformer
乾元3 小时前
RAG 架构: 利用向量数据库构建企业的安全知识库
运维·网络·数据库·人工智能·安全·网络安全·架构
山北雨夜漫步3 小时前
微服务01
分布式·微服务·架构
红藕香残玉簟秋3 小时前
【安卓学习】配置开发环境
android·学习