HarmonyOS 应用开发之任务(Mission)与启动模式

如前文所述,一个UIAbility实例对应一个任务。UIAbility实例个数与UIAbility配置的启动模式有关。在FA模型下,通过config.json配置文件中的"launchType"属性配置;在Stage模型下,通过 module.json5配置文件 中的"launchType"属性配置。

下面介绍了任务管理如何实现以下三种启动模式UIAbility组件的管理:

  • singleton:单实例模式,应用在运行时只存在一个该UIAbility实例。

图1 任务与singleton模式

  • multiton:多实例模式,每次调用 startAbility() 方法,都会在应用进程中创建一个该UIAbility实例。

图2 任务与multiton模式

  • specified:指定实例模式,由 AbilityStage 的( onAcceptWant() )决定是否创建新的UIAbility实例。

图3 任务与specified模式

每个UIAbility实例都对应了一个最近任务列表中看到的Mission(任务)。

每个UIAbility实例对应的Mission都保留有该UIAbility实例的快照(Snapshot),UIAbility实例销毁后,Mission信息(包括UIAbility信息和任务快照)依然会保留,直到用户删除该任务。

说明:

specified模式只在Stage模型上支持,FA模型不支持。

为了能让大家更好的学习鸿蒙(HarmonyOS NEXT)开发技术,这边特意整理了《鸿蒙开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05

《鸿蒙开发学习手册》:

如何快速入门:https://qr21.cn/FV7h05

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. ......

开发基础知识:https://qr21.cn/FV7h05

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. ......

基于ArkTS 开发:https://qr21.cn/FV7h05

  1. Ability开发
  2. UI开发
  3. 公共事件与通知
  4. 窗口管理
  5. 媒体
  6. 安全
  7. 网络与链接
  8. 电话服务
  9. 数据管理
  10. 后台任务(Background Task)管理
  11. 设备管理
  12. 设备使用信息统计
  13. DFX
  14. 国际化开发
  15. 折叠屏系列
  16. ......

鸿蒙开发面试真题(含参考答案):https://qr18.cn/F781PH

鸿蒙开发面试大盘集篇(共计319页):https://qr18.cn/F781PH

1.项目开发必备面试题

2.性能优化方向

3.架构方向

4.鸿蒙开发系统底层方向

5.鸿蒙音视频开发方向

6.鸿蒙车载开发方向

7.鸿蒙南向开发方向

相关推荐
Huang兄15 分钟前
鸿蒙-flutter-环境搭建和第一个HelloWorld
flutter·harmonyos
Huang兄16 分钟前
鸿蒙-flutter-使用PlatformView
flutter·harmonyos
硬核隔壁老王20 分钟前
从零开始搭建RAG系统系列(十):RAG系统性能优化技巧-生成模块优化 (Optimizing Generator)
人工智能·程序员·llm
硬核隔壁老王27 分钟前
从零开始搭建RAG系统系列(九):RAG系统性能优化技巧-检索模块优化 (Optimizing Retriever)
人工智能·程序员·llm
LLM大模型28 分钟前
LangChain篇-消息管理与聊天历史存储
人工智能·程序员·llm
等不到释怀1 小时前
千人中小型校园网络的网络规划
网络·华为·毕业设计·课程设计
勿念4361 小时前
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
harmonyos
勿念4361 小时前
用鸿蒙HarmonyOS5实现五子棋小游戏的过程
华为·harmonyos
二蛋和他的大花1 小时前
HarmonyOS运动开发:打造你的专属运动节拍器
华为·harmonyos
天天摸鱼的java工程师2 小时前
互联网行业能力解刨:从Java后端八年开发经验看
前端·后端·程序员