介绍
本示例展示了使用分布式协同框架提供的服务互通的能力。
本示例模拟了在备忘录的应用里,唤起另一个设备的拍照应用,并将拍照的结果传回给备忘录。
同时您也可以使用服务互通中的文档扫描和图库能力,实现跨端操作。
需要使用协同框架服务互通接口@kit.ServiceCollaborationKit。
效果预览
主窗口 | 应用首页 | 发现设备 | 拍照 |
---|---|---|---|
文档扫描 | 图库 | 图片回传 | |
使用说明
-
前置步骤:
- 准备一台2in1(或平板)和一台手机,2in1(或平板)安装此示例,手机安装具有跨端拍照能力的相机应用。
- 在设置里面,两台设备登录相同的huawei账号。
-
在2in1(或平板)的主屏幕,点击“备忘录Mock”,启动应用,在主界面可见“使用远端设备插入图片”按钮。
-
点击“使用远端设备插入图片”按钮,弹出菜单,在菜单里会列出可用的具有拍照能力的远端设备:手机。
-
点击相应设备的"拍照"按钮,就会唤起手机的相机应用。
-
在手机进行拍照,然后选择确认,照片就会回传到2in1类设备上并显示在应用的界面上。
具体实现
本示例展示的控件在@hms.collaboration.service.d.ets定义了跨端拍照生态API:
- createCollaborationServiceMenuItems(businessFilter?: Array<CollaborationServiceFilter>)
- CollaborationServiceStateDialog(onState: (stateCode: number, bufferType: string, buffer: ArrayBuffer))
业务使用时,需要先进行import导入CollaborationServiceStateDialog, createCollaborationServiceMenuItems与CollaborationServiceFilter。 在自定义的Menu控件内创建跨端拍照的菜单项,并在全局范围内声明对话框,并声明自己的照片接收处理回调。参考entry/src/main/ets/pages/Index.ets.
工程目录
├──entry/src/main/ets/
│ ├──constants
│ │ └──CommonConstants.ets // 常量类
│ ├──entryability
│ │ └──EntryAbility.ets
│ ├──pages
│ │ └──Index.ets // 首页
│ └──utils
│ └──Logger.ets // 日志类
└──entry/src/main/resource // 应用静态资源目录
相关权限
不涉及。
依赖
依赖设备具备WIFI能力。