鸿蒙开发:任务(Mission)与启动模式

任务(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模型不支持。

相关推荐
Georgewu10 小时前
【HarmonyOS组件/模板集成创新活动-如何高效开发鸿蒙应用 (鸿社圈子)】
harmonyos
袁煦丞12 小时前
AList网盘聚合神器!程序员用它实现“全球文件自由”:cpolar内网穿透实验室第580个成功挑战
前端·程序员·远程工作
SimonKing14 小时前
FastExcel:革新Java生态的高性能Excel处理引擎
java·后端·程序员
前端世界14 小时前
跨平台 App 如何无痛迁移到鸿蒙系统?全流程实战+Demo 教程
华为·harmonyos
龙儿筝14 小时前
鸿蒙和Android知识点
android·harmonyos
迷曳14 小时前
17、鸿蒙Harmony Next开发:状态管理(组件拥有的状态和应用拥有的状态)
前端·harmonyos·鸿蒙
redreamSo16 小时前
AI Daily | AI日报:小扎挖走OpenAI思维链关键人物; 黄仁勋:中国公司和技术太棒了; LLM 重塑记忆架构,迈向「操作系统」时代
程序员·aigc·资讯
KaneLogger16 小时前
赛博保姆出列!Gemini CLI & Claude Code + Kimi 手把手教程
人工智能·程序员
zhanshuo18 小时前
不同品牌的设备也能“心有灵犀”?带你玩转鸿蒙分布式跨端协同
harmonyos