• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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## MissionListener
17
18### onMissionCreated
19
20onMissionCreated(mission: number): void
21
22当系统创建任务时会触发该回调函数。
23
24**系统接口**:此接口为系统接口。
25
26**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
27
28**参数**:
29
30| 参数名 | 类型 | 必填 | 说明 |
31| -------- | -------- | -------- | -------- |
32| mission | number | 是 | 表示创建的任务ID。 |
33
34**示例**:
35
36详细示例请见[onMissionClosed](#onmissionclosed9)。
37
38### onMissionDestroyed
39
40onMissionDestroyed(mission: number): void
41
42当系统销毁任务时会触发该回调函数。
43
44**系统接口**:此接口为系统接口。
45
46**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
47
48**参数**:
49
50| 参数名 | 类型 | 必填 | 说明 |
51| -------- | -------- | -------- | -------- |
52| mission | number | 是 | 表示销毁的任务ID。 |
53
54**示例**:
55
56详细示例请见[onMissionClosed](#onmissionclosed9)。
57
58### onMissionSnapshotChanged
59
60onMissionSnapshotChanged(mission: number): void
61
62当系统更新任务缩略图时会触发该回调函数。
63
64**系统接口**:此接口为系统接口。
65
66**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
67
68**参数**:
69
70| 参数名 | 类型 | 必填 | 说明 |
71| -------- | -------- | -------- | -------- |
72| mission | number | 是 | 表示任务ID。 |
73
74**示例**:
75
76详细示例请见[onMissionClosed](#onmissionclosed9)。
77
78### onMissionMovedToFront
79
80onMissionMovedToFront(mission: number): void
81
82当系统将任务移动到前台时会触发该回调函数。
83
84**系统接口**:此接口为系统接口。
85
86**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
87
88**参数**:
89
90| 参数名 | 类型 | 必填 | 说明 |
91| -------- | -------- | -------- | -------- |
92| mission | number | 是 | 表示任务ID。 |
93
94**示例**:
95
96详细示例请见[onMissionClosed](#onmissionclosed9)。
97
98### onMissionLabelUpdated<sup>9+</sup>
99
100onMissionLabelUpdated(mission: number): void
101
102当系统更新任务标签时会触发该回调函数。
103
104**系统接口**:此接口为系统接口。
105
106**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
107
108**参数**:
109
110| 参数名 | 类型 | 必填 | 说明 |
111| -------- | -------- | -------- | -------- |
112| mission | number | 是 | 表示任务ID。 |
113
114**示例**:
115
116详细示例请见[onMissionClosed](#onmissionclosed9)。
117
118### onMissionIconUpdated<sup>9+</sup>
119
120onMissionIconUpdated(mission: number, icon: image.PixelMap): void
121
122当系统更新任务图标时会触发该回调函数。
123
124**系统接口**:此接口为系统接口。
125
126**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
127
128**参数**:
129
130| 参数名 | 类型 | 必填 | 说明 |
131| -------- | -------- | -------- | -------- |
132| mission | number | 是 | 表示任务ID。 |
133| icon | [image.PixelMap](../apis-image-kit/js-apis-image.md#pixelmap7) | 是 | 表示更新的任务图标。 |
134
135**示例**:
136
137详细示例请见[onMissionClosed](#onmissionclosed9)。
138
139### onMissionClosed<sup>9+</sup>
140
141onMissionClosed(mission: number): void
142
143当系统关闭任务时会触发该回调函数。
144
145**系统接口**:此接口为系统接口。
146
147**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
148
149**参数**:
150
151| 参数名 | 类型 | 必填 | 说明 |
152| -------- | -------- | -------- | -------- |
153| mission | number | 是 | 表示关闭的任务ID。 |
154
155**示例**:
156```ts
157import { missionManager } from '@kit.AbilityKit';
158import { BusinessError } from '@kit.BasicServicesKit';
159
160let listener: missionManager.MissionListener = {
161  onMissionCreated: (mission) => {
162    console.log(`onMissionCreated mission: ${JSON.stringify(mission)}`);
163  },
164  onMissionDestroyed: (mission) => {
165    console.log(`onMissionDestroyed mission: ${JSON.stringify(mission)}`);
166  },
167  onMissionSnapshotChanged: (mission) => {
168    console.log(`onMissionSnapshotChanged mission: ${JSON.stringify(mission)}`);
169  },
170  onMissionMovedToFront: (mission) => {
171    console.log(`onMissionMovedToFront mission: ${JSON.stringify(mission)}`);
172  },
173  onMissionLabelUpdated: (mission) => {
174    console.log(`onMissionLabelUpdated mission: ${JSON.stringify(mission)}`);
175  },
176  onMissionIconUpdated: (mission, icon) => {
177    console.log(`onMissionIconUpdated mission: ${JSON.stringify(mission)}`);
178    console.log(`onMissionIconUpdated icon: ${JSON.stringify(icon)}`);
179  },
180  onMissionClosed: (mission) => {
181    console.log(`onMissionClosed mission: ${JSON.stringify(mission)}`);
182  }
183};
184
185try {
186  let listenerId = missionManager.on('mission', listener);
187} catch (paramError) {
188  console.error(`error: ${(paramError as BusinessError).code}, ${(paramError as BusinessError).message}`);
189}
190```