鸿蒙中的自由流转
鸿蒙自由流转是 HarmonyOS(鸿蒙系统) 实现多设备协同的核心能力之一,旨在打破设备边界,让应用和服务在不同终端间无缝流转,提升用户体验。
什么是鸿蒙自由流转?
鸿蒙自由流转是指用户在多个搭载 HarmonyOS 的设备之间,能够不间断地继续任务,实现“任务跟着人走”的体验。它主要分为两类:
跨端迁移(串行交互):任务从一个设备完全转移到另一个设备,原设备停止参与。
例如:在手机上看视频,到家后一键迁移到智慧屏继续播放,进度和状态保持不变 。多端协同(并行交互):多个设备同时参与完成一个任务,各司其职。
例如:用手机操控电视播放游戏,同时用智能手表监测心率;或用平板和手机协同编辑文档 。
核心技术支撑
鸿蒙自由流转依赖以下四大分布式能力 :
- 分布式软总线:自动发现并连接附近设备,组建“超级终端”。
- 分布式数据管理:确保数据在设备间一致、同步。
- 分布式硬件能力:如调用其他设备的摄像头、扬声器等。
- 分布式任务调度:支持应用 Ability(能力单元)在设备间迁移与恢复。
如何实现?
以支持“应用接续”为例,需完成三步 :
- 声明可迁移:在
module.json5中设置"continuable": true。 - 源端保存状态:重写
onContinue()方法,打包当前任务数据(如播放进度、编辑内容)。 - 目标端恢复状态:在
onCreate()或onNewWant()中接收数据,还原界面。
注意:设备需登录同一华为账号、开启 Wi-Fi 和蓝牙,建议处于同一局域网;传输数据建议小于 100KB,大文件用分布式数据对象 。
应用场景
- 邮件跨设备编辑:手机写一半,到电脑继续,内容、格式、附件全保留 。
- 多设备健身:手表采集数据,手机/平板展示课程并提供建议 。
- 多屏游戏:手机作手柄,电视出画面,操作与显示分离 。
- 媒体播控:手机视频一键流转到电视,控制中心无缝切换 。
