如何改进车载三分屏SplitScreen启动交互方式?

背景:

在马哥的车载手机三分屏专题实战课程讲解时候,当时为了方便,直接把第三屏的Task内容一直固定为图库Activity。

有学员朋友也提出这个第三屏幕内容是否也可以进行动态变化而不是程序中写死呢?还有三分屏的各个Task是否可以不通过最近任务进行操作,有没有更简单的进入三分屏方式?

上面这2个需求其实在真正的车机分屏中也是非常常见的哈,所以这里马哥收到学员的疑问后立即就给大家针对课程的三分屏进行相关的交互改善,实现了三分屏的动态进入,三分屏的Task内容的动态控制等。

三分屏启动改造

手动启动动态设置第三屏内容

使用命令动态设置第三屏的componentName:

bash 复制代码
adb shell setprop debug.splitactivity.third xxx/xxxxActivity

涉及改造的代码如下:

cpp 复制代码
        ComponentName componentName1 = ComponentName.unflattenFromString(SystemProperties.get("debug.splitactivity.third","com.android.gallery3d/.app.GalleryActivity"));

实战验证如下:

第一步:

设置好第三Task的Activity名字为文件管理器

bash 复制代码
adb shell setprop debug.splitactivity.third com.android.documentsui/com.android.documentsui.files.FilesActivity

最近任务中只有2个Task,并没有第三个Task
进入后发现第三屏Task内容就是设置的我的文件对应的FilesActivity。

命令行一键启动三分屏

命令格式:

bash 复制代码
adb shell dumpsys activity service SystemUIService WMShell splitscreen startTask intent-3-task componentName1 componentName2 componentName3

这里面的componentName1,componentName2,componentName3就是三分屏的每个Task的对应Activity的名字。

大家如果不知道如何使用命令也可以通过help命令进行确认既可以:

bash 复制代码
adb shell dumpsys activity service SystemUIService WMShell help

实战命令如下:

bash 复制代码
adb shell dumpsys activity service SystemUIService WMShell splitscreen startTask intent-3-task com.android.messaging/com.android.messaging.ui.conversationlist.ConversationListActivity com.android.dialer/com.android.dialer.main.impl.MainActivity com.android.gallery3d/com.android.gallery3d.app.GalleryActivity

实战效果如下:

原文地址:
https://mp.weixin.qq.com/s/-_mvmBt2nFRUYNgE6Lhpgw

更多framework实战开发干货,请关注下面"千里马学框架"

相关推荐
千里马学框架2 天前
一起学 Android 14:ShellTransition 屏幕旋转过程深度剖析
android·智能手机·性能优化·framework·性能·屏幕旋转·rotation
美狐美颜SDK开放平台2 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
AFinalStone2 天前
Android7 SystemUI源码解析(七)Keyguard锁屏模块深度解析
android·systemui
致远ccc2 天前
Google Play 上架前如何测试 App?多国家 Android 环境测试
android·app测试·googleplay·多国家应用测试
ttyyttemo2 天前
Kotlin 协程中的 Job 结构化并发与取消
android
sun0077002 天前
tbox 4g/5g切换,导致wan ip 改变,导致车机旧网络不可用。需要重启车机才行
android
其实防守也摸鱼2 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
AFinalStone2 天前
Android7 SystemUI 源码解析(四)NavigationBar 导航栏与 SystemBars
android·systemui
JMchen2 天前
属性动画原理与高级动画实现
android·kotlin·canvas
AFinalStone2 天前
Android7 SystemUI 源码解析(二)启动流程深度解析
android·systemui