UiAbility

郭杰 ... 2024-7-28 大约 2 分钟

# UiAbility

第1列

第2列

# UIAbility组件启动模式

# singleton启动模式

singleton启动模式为单实例模式,也是默认情况下的启动模式。

每次调用startAbility() (opens new window)方法时,如果应用进程中该类型的UIAbility实例已经存在,则复用系统中的UIAbility实例。系统中只存在唯一一个该UIAbility实例,即在最近任务列表中只存在一个该类型的UIAbility实例。

应用的UIAbility实例已创建,该UIAbility配置为单实例模式,再次调用startAbility() (opens new window)方法启动该UIAbility实例。由于启动的还是原来的UIAbility实例,并未重新创建一个新的UIAbility实例,此时只会进入该UIAbility的onNewWant() (opens new window)回调,不会进入其onCreate() (opens new window)onWindowStageCreate() (opens new window)生命周期回调。

# multiton启动模式

multiton启动模式为多实例模式,每次调用startAbility() (opens new window)方法时,都会在应用进程中创建一个新的该类型UIAbility实例。即在最近任务列表中可以看到有多个该类型的UIAbility实例。这种情况下可以将UIAbility配置为multiton(多实例模式)。

# specified启动模式

specified启动模式为指定实例模式,针对一些特殊场景使用(例如文档应用中每次新建文档希望都能新建一个文档实例,重复打开一个已保存的文档希望打开的都是同一个文档实例)。

上次编辑于: 2024年7月28日 21:17
贡献者: guojie