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

前文

Android U 多任务启动分屏------Launcher流程(下分屏)

前文说到通过ISplitScreen接口跨进程调用到了SystemUI进程,我们继续分析分屏在systemui中的实现。

wmshell实现分屏

实现ISplitScreen接口

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

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));
        }
        ......
    }
相关推荐
北漂Zachary1 小时前
四大编程语言终极对比
android·java·php·laravel
学习使我健康5 小时前
Android App 启动原理
android·android studio
TechMix6 小时前
【性能工具】atrace、systrace、perfetto抓取的trace文件有何不同?
android·性能优化
张小潇6 小时前
AOSP15 WMS/AMS系统开发 - 窗口层级源码分析
android·前端
努力努力再努力wz8 小时前
【MySQL入门系列】掌握表数据的 CRUD:DML 核心语法与执行逻辑解析
android·开发语言·数据结构·数据库·c++·b树·mysql
zh_xuan11 小时前
Android gradle任务
android·gradle构建
Grackers11 小时前
Android Perfetto 系列 10:Binder 调度与锁竞争
android·binder
李白你好11 小时前
Android 自动化渗透测试指令生成
android·自动化
CeshirenTester12 小时前
Claude Code 不只是会写代码:这 10 个 Skills,才是效率分水岭
android·开发语言·kotlin
朝星14 小时前
Android开发[2]:Flow
android·kotlin