HarmonyOS 后台任务管理开发指南上线!

为什么要使用后台任务?开发过程中如何选择合适的后台任务?后台任务申请时存在哪些约束与限制?

针对开发者使用后台任务中的疑问,我们上线了概念更明确、逻辑结构更清晰的后台任务开发指南,包含具体的使用场景、详细的开发步骤,帮助开发者全面理解申请后台任务的必要性、后台任务类型和申请操作步骤等。

本期 HarmonyOS 开发者资料直通车带您快速了解内容干货~

一、初识后台任务

设备返回主界面、锁屏、应用切换等操作会使应用退至后台,应用退至后台后如果继续活动,可能会造成设备耗电快、用户界面卡顿等现象。为了降低设备耗电速度、保障用户使用流畅度,系统会对退至后台的应用进行管控,包括进程挂起(即系统不再为应用进程分配 CPU 资源,同时对应的公共事件等不再发给应用进程)和进程终止。

为了保障后台音乐播放、日历提醒等功能的正常使用,系统提供了规范内受约束的后台任务,扩展应用在后台运行时间,包括短时任务、长时任务、延迟任务、代理提醒。

参考文档链接

后台任务总体概述:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/background-task-overview-0000001614944868-V3

二、选择后台任务

开发者可以根据如下的功能介绍,选择合适的后台任务,以满足应用退至后台后继续运行的需求。

○ 短时任务:适用于实时性要求高、耗时不长的任务,例如应用更新时退至后台后继续更新,保存更新时的数据和状态。

○ 长时任务:适用于长时间运行在后台、用户可感知的任务,例如后台播放音乐、导航、设备连接等,使用长时任务避免应用进程被挂起。

○ 延迟任务:适用于实时性要求不高、可延迟执行的任务。应用退至后台后被放入执行队列,系统会根据内存、功耗等统一调度,例如有网络时不定期主动获取邮件。

○ 代理提醒:代理提醒是指应用退后台或进程终止后,系统会代理应用做相应的提醒。适用于定时提醒类业务,当前支持的提醒类型包括倒计时、日历和闹钟三类。

图 1 后台任务类型选择

为保障选择到合适的任务,开发者可以根据图 1 流程图再次判断。

参考文档链接

后台任务总体概述:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/background-task-overview-0000001614944868-V3

三、申请后台任务

选择合适的后台任务类型后,可以进行申请后台任务的操作啦~以短时任务为例,清晰地呈现申请后台任务时的操作步骤。

①了解相关机制及规格,实现更高效开发。

○ 申请时机:应用需要在前台或退至后台 5 秒内申请短时任务。

○ 数量限制:一个应用同一时刻最多支持申请 3 个。

○ 配额机制:一个应用有一定时间配额,单日配额 10 分钟,单次配额最大为 3 分钟,低电量时默认为 1 分钟,配额消耗完后不允许再申请短时任务。所以,任务完成后,应用需主动取消短时任务,否则会影响应用当日短时任务的剩余配额。

○ 配额计算:仅当应用在后台时,统计应用下的短时任务计时;同一个应用下的同一个时间段的短时任务,不重复计时。

②导入相关模块,申请短时任务并实现回调。

③查询短时任务的剩余时间,用以判断是否继续运行其他业务。

④任务完成后,及时取消短时任务。

更详细内容请参见:

参考文档链接

短时任务:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/transient-task-0000001759591245-V3

长时任务:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/continuous-task-0000001711672320-V3

延迟任务:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/work-scheduler-0000001711831844-V3

代理提醒:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/agent-powered-reminder-0000001663585481-V3

四、期待您的反馈

以上就是本期为大家准备的 HarmonyOS 后台任务管理开发指南上新内容,希望能够帮助开发者更高效地探索、体验、上手 HarmonyOS。

同时,我们十分重视开发者的意见,欢迎各位开发者在 HarmonyOS 应用开发官网积极反馈意见。

我们将持续提升文档体验、丰富和完善内容,感谢各位开发者的支持及信赖,您的满意是我们持续提升文档体验的目标和动力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/229159.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

4、stable diffusion

github 安装anaconda环境 conda env create -f environment.yaml conda activate ldm安装依赖 conda install pytorch1.12.1 torchvision0.13.1 torchaudio0.12.1 cudatoolkit11.3 -c pytorch pip install transformers4.19.2 diffusers invisible-watermark pip install -e…

ELK+Filebeat

Filebeat概述 1.Filebeat简介 Filebeat是一款轻量级的日志收集工具,可以在非JAVA环境下运行。 因此,Filebeat常被用在非JAVAf的服务器上用于替代Logstash,收集日志信息。实际上,Filebeat几乎可以起到与Logstash相同的作用&…

社区团购小程序源码系统 带会员功能+会员积分+会员分组+会员等级 附带部署与搭建的完整教程

社区团购小程序源码系统是一种基于微信小程序的电商系统,它通过社交电商模式,将社区居民、商家和平台紧密结合,实现便捷的线上购物和线下社区服务。该系统支持会员功能、会员积分、会员分组和会员等级等功能,为用户提供更加个性化…

ST53xx 系列是一种高精度、高输入电压、低静态电流、高速度、低压差线性稳压器

ST53xxS/T 40V,低静态电流,高可靠性 LDO 概述: ST53xx 系列是一种高精度、高输入电压、低静态电流、高速度、低压差线性稳压器,具有高纹波抑制能力。在 Vour 5V VIN 7V 时,输入电压高达40V,负载电流高达300…

使用OSS搭建私有云内网yum仓库的方法

使用OSS搭建私有云内网yum仓库的方法 文字&图片内容已脱敏 #、前几天接到一个搭建内网yum源的任务。刚接到这个任务的时候还是比较头疼的,因为内部有很多VPC。VPC与VPC之间是不互通的,又不能打高速通道,也不可能每个VPC下边都建一个yum…

vue.draggable拖拽——岗位切换如何判断?

有一个业务场景:把一个单位的某个岗位的人,从某某市A岗位调离出来后,又拖拽回去,如果是回到某某市A岗位,则没有变化,若是换了岗位,则会把色块变成红色,表示岗位的变化。 方法一&…

Web3 进入“殖民时代”

最近在 AI 和 Web3 领域发生了两件“大”事,两件事都具有指标意义,但在媒体上其意义都被大量的八卦细节给掩埋了。 其实看待任何重大事件,都可以有两种不同的视角。第一是娱乐的视角,在新闻事件中找乐子。如果是本着这个目的&…

LeetCode Hot100 543.二叉树的直径

题目: 给你一棵二叉树的根节点,返回该树的 直径 。 二叉树的 直径 是指树中任意两个节点之间最长路径的 长度 。这条路径可能经过也可能不经过根节点 root 。 两节点之间路径的 长度 由它们之间边数表示。 方法:灵神 代码: ​…

LeetCode [中等]3. 无重复字符的最长子串

3. 无重复字符的最长子串 - 力扣(LeetCode) 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 1. 滑动窗口(Sliding Window): 滑动窗口是一种用于处理数组或列表的子数组或子序列的问题…

60V 72V 输入 输出5V 2A 内置MOS 降压芯片 ESOP8封装

60V 72V 输入 输出5V 2A 内置MOS 降压芯片 SC9102 ESOP8封装

C++基础 -10- 类的构造函数

类的构造函数类型一 使用this指针给类内参数赋值 class rlxy {public:int a;rlxy(int a, int b, int c){this->aa;this->bb;this->cc;cout << "rlxy" << endl;}protected:int b;private:int c; };int main() {rlxy ss(10, 20, 30); }类的构造…

Sentaurus TCAD半导体器件入门常用案例合集

Sentaurus TCAD是用于模拟半导体器件和工艺的工具之一&#xff0c;可以帮助工程师设计电路元件&#xff0c;优化半导体工艺和器件性能。主要功能包括&#xff1a;半导体器件建模&#xff08;用于建立各种半导体器件的物理模型工艺模拟&#xff09;、半导体器件的制造工艺模拟&a…