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));
        }
        ......
    }
相关推荐
冬奇Lab6 小时前
应用异常退出实战分析:一次"幽灵杀手"引发的车载系统故障排查
android·性能优化·debug
Ehtan_Zheng10 小时前
如何简化状态和实体映射Kotlin接口,委托和协变泛型
android
飘逸飘逸12 小时前
Autojs进阶前言
android·javascript
spencer_tseng12 小时前
Branding Printing System (Android Pad)
android·pad
FrameNotWork12 小时前
多设备 Android Logcat 自动采集方案:基于 Docker + Shell 实现日志按天切割与自动清理
android·docker·容器
bqliang14 小时前
Compose 实验性 Styles API
android·android jetpack
大尚来也14 小时前
PHP 入门指南:从零基础到掌握核心语法
android
summerkissyou198714 小时前
android -wifi/蓝牙-常见面试题
android·wifi·bluetooth
XiaoLeisj14 小时前
Android Activity 页面导航基础:Manifest 声明、Intent 显式/隐式跳转与数据传递
android·java