1 鸿蒙分布式任务调度技术教程-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙分布式任务调度技术教程

华为麒麟 来源:鸿蒙技术社区 作者:木棉花潘颖琳 2021-08-20 10:03 次阅读

本文是对分布式任务调度的一个技术教程,以一个简单的案例来讲解。

正文部分分为两个部分:

第一部分是对分布式任务调度的简单概述

第二部分是分布式任务调度的一个简单案例(跨设备 FA 的拉起)

分布式任务调度的简单概述

Ability 可以分为 FA(Feature Ability)和 PA(Particle Ability)两种类型。

①FA 支持 Page Ability

Page 模板:FA 唯一支持的模板,用于提供与用户交互的能力。一个 Page 实例可以包含一组相关页面,每个页面用一个 AbilitySlice 实例表示。

②PA 支持 Service Ability 和 Data Ability

Service 模板:用于提供后台运行任务的能力。Data 模板:用于对外部提供统一的数据访问抽象。

874900b0-00ef-11ec-9bcf-12bb97331649.png

根据 Ability 模板及意图的不同,分布式任务调度向开发者提供以下六种能力:

启动远程 FA

启动远程 PA

关闭远程 PA

连接远程 PA

断开连接远程 PA

FA 跨设备迁移

“跨设备FA的拉起”的教程

①创建项目

DevEco Studio 下载安装成功后,打开 DevEco Studio,点击左上角的 File,点击 New,再选择 New Project。

选择 Empty Ability(Java),然后点击 Next,给项目命名 distribute_FA,选择设备类型 Phone,最后点击 Finish。

②申请权限

在 entry>src>main>config.json 文件中最下方"launchType": "standard"后面的中括号后且在上方的"module"的花括号内添加以下代码添加所需要的分布式权限:

"reqPermissions":[ { "name":"ohos.permission.DISTRIBUTED_DATASYNC" }, { "name":"ohos.permission.GET_DISTRIBUTED_DEVICE_INFO" } ]

第一个权限是允许不同设备间的数据交换(敏感权限)。第二个权限是允许获取分布式组网内的设备列表和设备信息(非敏感权限)。应用在使用对应服务的能力或数据时,需要申请对应权限。

已在 config.json 文件中声明的非敏感权限,会在应用安装时自动授予,该类权限的授权方式为系统授权(system_grant)。

敏感权限需要应用动态申请,通过运行时发送弹窗的方式请求用户授权,该类权限的授权方式为用户授权(user_grant)。

在 entry>src>main>Java>MainAbility 文件里添加敏感权限(非敏感权限在该文件里可加可不加),在 onStart 函数里添加以下代码:

requestPermissionsFromUser(newString[]{"ohos.permission.DISTRIBUTED_DATASYNC"},0);

如果添加的权限比较多可以像这样新建一个字符串数组,后面的 0 是请求码(requestCode),是用来标识请求的来源(这个值任自己设定)。

③界面布局

在 entry>src>main>resources>base>layout>ability_main.xml 文件里添加一个按钮组件,加入唯一标识符 id 并配置好其他相应的属性,代码如下:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 华为
    +关注

    关注

    216

    文章

    34411

    浏览量

    251471
  • 鸿蒙系统
    +关注

    关注

    183

    文章

    2634

    浏览量

    66302
  • HarmonyOS
    +关注

    关注

    79

    文章

    1973

    浏览量

    30138

原文标题:1个简单案例讲解:鸿蒙分布式任务调度

文章出处:【微信号:Huawei_Kirin,微信公众号:华为麒麟】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    分布式通信的原理和实现高效分布式通信背后的技术NVLink的演进

    大型模型的大小已经超出了单个 GPU 的范围。所以就需要实现跨多个 GPU 的模型训练,这种训练方式就涉及到了分布式通信和 NVLink。 当谈及分布式通信和 NVLink 时,我们进入了一个引人入胜且不断演进的技术领域,下面我
    的头像 发表于 11-18 09:39 408次阅读
    <b class='flag-5'>分布式</b>通信的原理和实现高效<b class='flag-5'>分布式</b>通信背后的<b class='flag-5'>技术</b>NVLink的演进

    浅谈屋顶分布式光伏发电技术的设计与应用

    【摘要】为了缓解城市用电紧张袁降低人们的用电成本,可以在工业园区、办公楼屋顶等场所应用屋顶分布式光伏发电技术进行就近转换、并网发电袁充分利用建筑物屋顶的太阳资源。概述屋顶分布式光伏发电技术
    的头像 发表于 11-11 15:10 435次阅读
    浅谈屋顶<b class='flag-5'>分布式</b>光伏发电<b class='flag-5'>技术</b>的设计与应用

    分布式光纤测温是什么?应用领域是?

    分布式光纤测温是一种先进的温度测量技术,它利用光纤的拉曼散射原理进行温度监测。以下是对分布式光纤测温的详细介绍: 一、基本原理 分布式光纤测温的原理基于光纤的拉曼散射效应。当光纤某处的
    的头像 发表于 10-24 15:30 320次阅读
    <b class='flag-5'>分布式</b>光纤测温是什么?应用领域是?

    分布式光纤声波传感技术的工作原理

    分布式光纤声波传感技术(Distributed Acoustic Sensing,DAS)是一种利用光纤作为传感元件,实现对沿光纤路径上的环境参数进行连续分布式测量的技术
    的头像 发表于 10-18 14:50 629次阅读
    <b class='flag-5'>分布式</b>光纤声波传感<b class='flag-5'>技术</b>的工作原理

    鸿蒙ArkTS声明开发:跨平台支持列表【分布式迁移标识】 通用属性

    组件的分布式迁移标识,指明了该组件在分布式迁移场景下可以将特定状态恢复到对端设备。
    的头像 发表于 06-07 21:15 389次阅读

    鸿蒙开发接口数据管理:【@ohos.data.distributedData (分布式数据管理)】

    分布式数据管理为应用程序提供不同设备间数据库的分布式协同能力。通过调用分布式数据各个接口,应用程序可将数据保存到分布式数据库中,并可对分布式
    的头像 发表于 06-07 09:30 960次阅读
    <b class='flag-5'>鸿蒙</b>开发接口数据管理:【@ohos.data.distributedData (<b class='flag-5'>分布式</b>数据管理)】

    鸿蒙HarmonyOS开发实战:【分布式音乐播放】

    本示例使用fileIo获取指定音频文件,并通过AudioPlayer完成了音乐的播放完成了基本的音乐播放、暂停、上一曲、下一曲功能;并使用DeviceManager完成了分布式设备列表的显示和分布式能力完成了音乐播放状态的跨设备分享。
    的头像 发表于 04-10 17:51 865次阅读
    <b class='flag-5'>鸿蒙</b>HarmonyOS开发实战:【<b class='flag-5'>分布式</b>音乐播放】

    HarmonyOS开发技术全面分析

    分布式数据管理示意图见 图 3 。 分布式数据管理示意图 分布式任务调度 分布式
    发表于 02-21 16:31

    AI加速智能家居分布式语音技术发展

    中的任何地方通过语音命令来控制智能设备,实现更具有体验性的居家生活。   什么是分布式语音技术?   分布式语音技术,也称为DSR(Distributed Speech Recogni
    的头像 发表于 02-01 00:16 5796次阅读

    鸿蒙开发【分布式任务调度】解析

    1.FA 迁移可以打通设备间的壁垒,有助于不同能力的设备进行互助。前文以一个简单的例子介绍如何通过分布式任务调度提供的能力,实现 FA 跨设备的迁移(包括 FA 启动及状态数据的同步)。 2.FA
    的头像 发表于 01-29 18:03 693次阅读

    鸿蒙OS 分布式任务调度

    鸿蒙OS 分布式任务调度概述 在 HarmonyO S中,分布式任务
    的头像 发表于 01-29 16:50 485次阅读

    分布式大屏控制系统的应用场景

    分布式大屏控制系统具有广泛的应用场景,主要涉及以下几个方面: 监控指挥中心:如交通指挥中心、电力调度中心、应急指挥中心等,用于实时监控、调度和指挥,保证系统的安全、稳定、高效运行。 会议中心:在
    的头像 发表于 01-29 14:25 736次阅读

    什么是分布式架构?

    分布式架构是指将一个系统或应用拆分成多个独立的节点,这些节点通过网络连接进行通信和协作,以实现共同完成任务的一种架构模式。这种架构模式旨在提高系统的可扩展性、可靠性和性能表现。 一、分布式架构的特点
    的头像 发表于 01-12 15:04 1228次阅读
    什么是<b class='flag-5'>分布式</b>架构?

    任务调度系统设计的核心逻辑

    Redis的读写性能极好,分布式锁也比Quartz数据库行级锁更轻量级。当然Redis锁也可以替换成Zookeeper锁,也是同样的机制。 在小型项目中,使用:定时任务框架(Quartz/Spring Schedule)和 分布式
    的头像 发表于 01-02 15:09 866次阅读
    <b class='flag-5'>任务</b><b class='flag-5'>调度</b>系统设计的核心逻辑

    分布式IO工业自动化数据采集与分析的核心

    随着工业自动化技术的不断发展,分布式IO在工业自动化领域的应用越来越广泛。作为一种先进的控制技术分布式IO能够实现设备的分布式控制和监测,
    发表于 12-28 14:47