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

电子说

1.3w人已加入

描述

任务(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信息和任务快照)依然会保留,直到用户删除该任务。

说明:
开发前请熟悉鸿蒙开发指导文档 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
specified模式只在Stage模型上支持,FA模型不支持。

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分