1# MissionListener (系统接口) 2 3定义系统任务状态监听,可以通过[on](js-apis-app-ability-missionManager-sys.md#missionmanageronmission)注册。 4 5> **说明:** 6> 7> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 本模块接口为系统接口。 9 10## 导入模块 11 12```ts 13import { missionManager } from '@kit.AbilityKit'; 14``` 15 16## 属性 17 18**系统接口**:此接口为系统接口。 19 20**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission 21 22| 名称 | 类型 | 必填 | 说明 | 23| ----------- | -------- | ---- | ------------------------------------------------------------ | 24| onMissionCreated | function | 否 | 表示当系统创建任务时回调执行。 | 25| onMissionDestroyed | function | 否 | 表示当系统销毁任务时回调执行。 | 26| onMissionSnapshotChanged | function | 否 | 表示当系统更新任务缩略图时回调执行。 | 27| onMissionMovedToFront | function | 否 | 表示当系统将任务移动到前台时回调执行。 | 28| onMissionLabelUpdated<sup>9+</sup> | function | 否 | 表示当系统更新任务标签时回调执行。 | 29| onMissionIconUpdated<sup>9+</sup> | function | 否 | 表示当系统更新任务图标时回调执行。 | 30| onMissionClosed<sup>9+</sup> | function | 否 | 表示当系统关闭任务时回调执行。 | 31 32**示例:** 33```ts 34import { missionManager } from '@kit.AbilityKit'; 35import { BusinessError } from '@kit.BasicServicesKit'; 36 37let listener: missionManager.MissionListener = { 38 onMissionCreated: (mission) => { 39 console.log(`onMissionCreated mission: ${JSON.stringify(mission)}`); 40 }, 41 onMissionDestroyed: (mission) => { 42 console.log(`onMissionDestroyed mission: ${JSON.stringify(mission)}`); 43 }, 44 onMissionSnapshotChanged: (mission) => { 45 console.log(`onMissionSnapshotChanged mission: ${JSON.stringify(mission)}`); 46 }, 47 onMissionMovedToFront: (mission) => { 48 console.log(`onMissionMovedToFront mission: ${JSON.stringify(mission)}`); 49 }, 50 onMissionLabelUpdated: (mission) => { 51 console.log(`onMissionLabelUpdated mission: ${JSON.stringify(mission)}`); 52 }, 53 onMissionIconUpdated: (mission, icon) => { 54 console.log(`onMissionIconUpdated mission: ${JSON.stringify(mission)}`); 55 console.log(`onMissionIconUpdated icon: ${JSON.stringify(icon)}`); 56 }, 57 onMissionClosed: (mission) => { 58 console.log(`onMissionClosed mission: ${JSON.stringify(mission)}`); 59 } 60}; 61 62try { 63 let listenerId = missionManager.on('mission', listener); 64} catch (paramError) { 65 console.error(`error: ${(paramError as BusinessError).code}, ${(paramError as BusinessError).message}`); 66} 67```