前提:技术讨论,不论鸿蒙究竟是一个掏空 AOSP 的操作系统,还是一个包罗一切的商业概念,说实话对于用户而言这真的不是特别重要。但仅就功能上看,鸿蒙 2.0 比 MIUI 12 在功能上亮眼太多。
本人无任何 Android 开发经验。
《鸿蒙全家桶体验分享:华为 Mate40 、MatePad Pro 、MateView……这就是超级终端的魅力吗?》 https://www.bilibili.com/video/BV1VB4y1g7AR
多屏协同,简单来说,就是可以将手机上的 app 直接拽到平板上运行。最常用的实现方式就是屏幕共享,把图像帧抓下来传输到另外一端进行回放,拿 scrcpy 来改的团队应该不少。
鸿蒙多屏协同连接完成后,暂时使用的是屏幕共享的模式。
鸿蒙一个亮眼的功能是:在平板上的 bilibili 全屏播放,手机无须和平板的屏幕保持 mirroring 而可以去刷微博,平板成为一块副屏。
我的困惑在于,此时平板上运行的全屏 bilibili,是在平板系统上通过 URL scheme 拉起的一个本地原生 Activity (假设鸿蒙还有这个概念),还是手机操作系统对屏幕进行了屏幕扩展,虚拟出了一块副屏(分辨率为平板屏幕尺寸),渲染后将帧传送到平板进行回放。
前者要求待投屏的 app 在两台设备上都已安装,状态数据复杂的 app 也不支持这样的 URL scheme 跳转打开。基于华为对硬件、系统的掌控能力底层渲染技术的研究储备( GPU Turbo ),后者看上去实现可行性更强?也更有一些软总线的意味了。
1
quzard 2021-06-03 18:59:18 +08:00
我也好奇。有大佬研究过吗
|
2
quzard 2021-06-03 18:59:50 +08:00
但感觉和苹果的 iPad 随航差不多的技术?
|
3
also24 2021-06-03 19:05:38 +08:00
|
4
paradoxs 2021-06-03 19:08:44 +08:00
软总线,很好,词很好。
|
5
zckevin OP @quzard 不怎么用得起苹果设备,也才刚刚知道苹果有 sidecar 这个功能...看上去原理应该是相似的,华为玩得花样似乎更多一些。
|
7
dallaslu 2021-06-03 19:14:31 +08:00
和视频投屏(智能电视、苹果设备)的体验很像啊
|
9
zckevin OP @dallaslu 投屏的问题在于当两个设备分辨率不同(手机 v.s 电视),直接帧回放几乎是没法看的,所以肯定还是得屏幕拓展
|
10
also24 2021-06-03 19:22:05 +08:00
恩,我觉得参照 『平行视界』的思路来想的话。
平行视界本身就是对 Activity 的生命周期做了魔改接管,我觉得大致思路就是欺骗两个 Activity,让它们都认为自己在前台(当然,还要解决一大堆逻辑问题)。 那么按照这个思路,将其中一个 Activity 的显示,完全迁移到另一台(虚拟)设备上,再通过这个设备投屏出去,应该就可以做到类似的效果。 |
11
Yadomin 2021-06-03 19:26:47 +08:00 via Android
在 MIUI+ 上见过类似的操作,MIUI+ 的 PC 端上有小米笔记,但是并不是做了 PC 端应用,而是把手机端投屏,也不影响手机前台应用运行
|
15
Semidio 2021-06-03 20:16:40 +08:00
原理上来说应该和原本 PC 模式没啥区别
|
16
felixlong 2021-06-03 22:04:11 +08:00
这就是屏幕镜像吧。Android 底层本来就支持镜像的时候当成扩展屏幕的( https://developer.android.com/reference/android/hardware/display/VirtualDisplay )。
|
17
billccn 2021-06-04 05:13:31 +08:00
多少年前三星和摩托罗拉的"桌面体验"实现就支持在投屏里运行另外一个 Android 程序和手机屏幕上的互不干扰。
三星的 Dex 已经砍掉不少功能,但是这个功能还是有的,摩托的笔记本式扩展坞销量不好,后面就不知道怎么样了。 |
18
EVJohn 2021-06-04 07:58:15 +08:00
用着 sound-x 的来乱入下,用的是 Wi-Fi direct,感觉多屏协同的原理应该差不多
|
19
olaloong 2021-06-04 09:52:20 +08:00
感觉各家的协同基本都趋同了
MIUI+连上电脑后可以在电脑上至多同时打开三个 APP,互不影响,技术上应该类似 |
20
bigggge 2023-05-16 19:12:14 +08:00
|