当前位置: 首页 > article >正文

Android U 多任务启动分屏——SystemUI流程(更新中)

前文

Android U 多任务启动分屏——Launcher流程(下分屏)
前文说到通过ISplitScreen接口跨进程调用到了SystemUI进程,我们继续分析分屏在systemui中的实现。

wmshell实现分屏

实现ISplitScreen接口

代码路径:frameworks/base/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenController.java

    /**
     * The interface for calls from outside the host process.
     */
    @BinderThread
    private static class ISplitScreenImpl extends ISplitScreen.Stub
            implements ExternalInterfaceBinder {
        ......
        @Override
        public void startTasks(int taskId1, @Nullable Bundle options1, int taskId2,
                @Nullable Bundle options2, @SplitPosition int splitPosition, float splitRatio,
                @Nullable RemoteTransition remoteTransition, InstanceId instanceId) {
            executeRemoteCallWithTaskPermission(mController, "startTasks",
                    (controller) -> controller.mStageCoordinator.startTasks(taskId1, options1,
                            taskId2, options2, splitPosition, splitRatio, remoteTransition,
                            instanceId));
        }
        ......
    }

http://www.kler.cn/a/402216.html

相关文章:

  • 高级java每日一道面试题-2024年11月07日-Redis篇-Redis有哪些功能?
  • AJAX笔记 (速通精华版)
  • IDEA2023 创建SpringBoot项目(一)
  • macOS 的目录结构
  • 向量数据库FAISS之五:原理(LSH、PQ、HNSW、IVF)
  • Chrome 浏览器 131 版本新特性
  • perf使用方法
  • .NET 9 运行时中的新增功能
  • go语言中的切片含义和用法详解
  • (计算机毕设)基于SpringBoot+Vue的房屋租赁系统的设计与实现
  • 共享门店模式:创新零售的新篇章
  • 11.18 Maven-SpringBootWeb入门
  • Spring Boot图书馆管理系统:疫情中的技术实现
  • R环境依赖的备份与恢复全攻略
  • 【PHP小课堂】一起学习PHP中的反射(三)
  • selenium元素定位校验以及遇到的元素操作问题记录
  • OpenAI Adjusts Strategy as ‘GPT’ AI Progress Slow
  • 将大模型生成数据存入Excel,并用增量的方式存入Excel
  • Linux全局替换配置文件的IP
  • 【PyTorch][chapter 28] 揭秘 Transformer:缩放定律指南
  • 第十五章 Spring之假如让你来写AOP——Joinpoint(连接点)篇
  • flex布局样式 类名化scss(sass)
  • 在centos7中安装SqlDeveloper的Oracle可视化工具
  • 网络安全领域的最新动态和漏洞信息
  • 解决docker mysql命令行无法输入中文
  • java设计模式 - 装饰者模式