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

目录

前言

本章的主要内容是分布式流转,这一名词对于我来说也是一个新名词,不知道大家有没有听说过这一名词。给大家简单介绍下是什么,就像我们手机打开抖音刷视频,平板可能也会显示(前提是同一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分钟,包含写博客时间,下周开始进阶篇,希望感兴趣的朋友可以联系我

让我们进阶篇再见

相关推荐
Fanmeang1 小时前
华为防火墙基础功能详解:构建网络安全的基石
运维·网络·安全·华为·防火墙·策略·安全域
知识分享小能手1 小时前
jQuery 入门学习教程,从入门到精通, jQuery在HTML5中的应用(16)
前端·javascript·学习·ui·jquery·html5·1024程序员节
爱笑的眼睛111 小时前
深入解析ArkTS类型系统:构建安全高效的HarmonyOS应用
华为·harmonyos
吃个糖糖2 小时前
Pytorch 学习之Transforms
人工智能·pytorch·学习
常常不爱学习2 小时前
Vue3 + TypeScript学习
开发语言·css·学习·typescript·html
Android疑难杂症2 小时前
鸿蒙Media Kit媒体服务开发快速指南
android·harmonyos·音视频开发
CandyU22 小时前
UE5 C++ 进阶学习 小知识点 —— 01 - 本地化语言
学习·ue5
国霄3 小时前
(3)Kotlin/Js For Harmony——解决官方库序列化卡顿
harmonyos
麦聪聊数据3 小时前
大数据与云原生数据库中的 SQL2API:优化跨平台数据访问与查询
数据库·sql·云原生
武陵悭臾3 小时前
Python应用开发学习: Pygame 中实现数字水平靠右对齐和垂直靠底对齐
python·学习·程序人生·游戏·个人开发·学习方法·pygame