重生之我在大学自学鸿蒙开发第九天-《分布式流转》

目录

前言

本章的主要内容是分布式流转,这一名词对于我来说也是一个新名词,不知道大家有没有听说过这一名词。给大家简单介绍下是什么,就像我们手机打开抖音刷视频,平板可能也会显示(前提是同一wife和同一账号)相信大家在平时也会使用,今天我们就来看看他是怎么来实现的这一功能。我感觉就是对配置文件的修改(个人观点)

官方解释:

在进行分布式流转开发之前,需要先了解流转的前提条件,流转的前提条件包括:

  • 双端设备需要登录同一华为帐号。

  • 双端设备需要打开Wi-Fi和蓝牙开关。条件允许时,建议双端设备接入同一个局域网,可提升数据传输的速度。

  • 应用接续只能在同应用(UIAbility)之间触发,双端设备都需要有该应用。

实践

本章节内容参考官方链接
通过结构化数据构建页面-HarmonyOS应用开发快速入门-Codelabs-华为开发者联盟

配置流转

启用应用接续能力,这里在default模块中开启应用接续

这里好像是牵扯到权限问题,所以要在json中进行一下配置,具体原因官网解释如下:

写明申请原因。由于之后需要的分布式流转权限即"ohos.permission.DISTRIBUTED_DATASYNC"权限为user_grant权限类型,为需要用户授权的类型,该类型权限申请时需要写明申请原因和使用场景,且原因字段只支持使用$string的方式进行引用,具体写法之后的申请配置可以看到,所以需要开发者在products/default/src/main/resources/base/element/string.json中写明申请原因。

这里还是在default模块下进行配置,也是关于权限的问题,这里直接去官网复制过来就行了,相当于一个小功能,不用刻意的去记住这些东西

复制代码
 "requestPermissions": [
      {
        "name": "ohos.permission.DISTRIBUTED_DATASYNC",
        "reason": "$string:distributed_data_sync",
        "usedScene": {
          "abilities": [
            "EntryAbility"
          ],
          "when": "inuse"
        }
      },
      {
        "name": "ohos.permission.INTERNET",
        "reason": "$string:apply_for_network"
      }
    ]

运行流程

这里就相当于我们手机打开APP,在平板上面也可以进行打开

接口实现

开始实现源端和对端的接口

源端接口实现

这里添加一个函数即可在点击对端的dock栏应用图标后,会进入源端的onContinue()回调

对端接口实现

这里也是固定的代码,直接去官网cv就行,说实话这一章并不是很理解,感觉这一功能可有可恶,用得到的话就直接去看官方文档吧,这里就不给大家解释了,因为博主也不清楚

测试

我们来用虚拟机测试下

我这里直接同时启动这三台设备了

这里一定要选择允许,经过授权后才能生效

这里不小心整错了,两边的是折叠屏,我还以为是平板

不知道为什么失败了,后面再想解决方案吧

总结

本章结束后就要开始新篇章了,进阶篇准备以项目为主,基础篇明天总结下方便大家去直接食用,当然还是建议去看官方文档,比我写的要详细多了,我这里只是为了记录下我的学习过程

总历时1170分钟,包含写博客时间,下周开始进阶篇,希望感兴趣的朋友可以联系我

让我们进阶篇再见

相关推荐
键盘鼓手苏苏5 小时前
Kubernetes与GitOps高级实践
云原生·kubernetes·k8
speop5 小时前
TASK01 | Reasoning Kindom
学习
我的世界洛天依6 小时前
胡桃讲编程:早期华为手机(比如畅享等)可以升级鸿蒙吗?
华为·harmonyos
2301_822703206 小时前
开源鸿蒙跨平台Flutter开发:幼儿疫苗全生命周期追踪系统:基于 Flutter 的免疫接种档案与状态机设计
算法·flutter·华为·开源·harmonyos·鸿蒙
2301_822703206 小时前
鸿蒙flutter三方库实战——教育与学习平台:Flutter Markdown
学习·算法·flutter·华为·harmonyos·鸿蒙
码喽7号6 小时前
vue学习四:Axios网络请求
前端·vue.js·学习
星幻元宇VR7 小时前
VR科普行走平台适用哪些科普教育主题
科技·学习·安全·vr·虚拟现实
humors2217 小时前
各厂商工具包网址
java·数据库·python·华为·sdk·苹果·工具包
xinzheng新政7 小时前
Javascript 深入学习基础·4
javascript·学习·servlet
charlie1145141917 小时前
通用GUI编程技术——图形渲染实战(二十九)——Direct2D架构与资源体系:GPU加速2D渲染入门
开发语言·c++·学习·架构·图形渲染·win32