• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.application.missionManager (missionManager)(系统接口)
2
3<!--Kit: Ability Kit-->
4<!--Subsystem: Ability-->
5<!--Owner: @littlejerry1-->
6<!--Designer: @ccllee1-->
7<!--Tester: @lixueqing513-->
8<!--Adviser: @huipeizi-->
9
10missionManager模块提供系统任务管理能力,包括对系统任务执行锁定、解锁、清理、切换到前台等操作。
11
12> **说明:**
13>
14> 本模块首批接口从API version 8开始支持,从API version 9废弃,替换模块为[@ohos.app.ability.missionManager](js-apis-app-ability-missionManager-sys.md)。后续版本的新增接口,采用上角标单独标记接口的起始版本。
15>
16> 本模块接口均为系统接口,三方应用不支持调用。
17
18## 导入模块
19
20```ts
21import missionManager from '@ohos.application.missionManager';
22```
23
24## 权限列表
25
26ohos.permission.MANAGE_MISSIONS
27
28## missionManager.registerMissionListener
29
30registerMissionListener(listener: MissionListener): number
31
32注册系统任务状态监听器。
33
34**需要权限**:ohos.permission.MANAGE_MISSIONS
35
36**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
37
38**系统接口**:此接口为系统接口。
39
40**参数:**
41
42  | 参数名 | 类型 | 必填 | 说明 |
43  | -------- | -------- | -------- | -------- |
44  | listener | [MissionListener](js-apis-inner-application-missionListener-sys.md) | 是 | 系统任务监听器。 |
45
46**返回值:**
47
48  | 类型 | 说明 |
49  | -------- | -------- |
50  | number | 监听器的index值,由系统创建,在注册系统任务状态监听器时分配,和监听器一一对应&nbsp;。 |
51
52**示例:**
53
54```ts
55import missionManager from '@ohos.application.missionManager';
56
57console.log('registerMissionListener');
58let listenerid = missionManager.registerMissionListener({
59  onMissionCreated: (mission) => {console.log('--------onMissionCreated-------');},
60  onMissionDestroyed: (mission) => {console.log('--------onMissionDestroyed-------');},
61  onMissionSnapshotChanged: (mission) => {console.log('--------onMissionSnapshotChanged-------');},
62  onMissionMovedToFront: (mission) => {console.log('--------onMissionMovedToFront-------');},
63  onMissionIconUpdated: (mission, icon) => {console.log('--------onMissionIconUpdated-------');},
64  onMissionClosed: (mission) => {console.log('--------onMissionClosed-------');},
65  onMissionLabelUpdated: (mission) => {console.log('--------onMissionLabelUpdated-------');}
66});
67```
68
69
70## missionManager.unregisterMissionListener
71
72unregisterMissionListener(listenerId: number, callback: AsyncCallback&lt;void&gt;): void
73
74解注册任务状态监听器。
75
76**需要权限**:ohos.permission.MANAGE_MISSIONS
77
78**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
79
80**系统接口**:此接口为系统接口。
81
82**参数:**
83
84  | 参数名 | 类型 | 必填 | 说明 |
85  | -------- | -------- | -------- | -------- |
86  | listenerId | number | 是 | 系统任务状态监听器的index值,和监听器一一对应,由registerMissionListener方法返回。 |
87  | callback | AsyncCallback&lt;void&gt; | 是 | 执行结果回调函数。 |
88
89**示例:**
90
91```ts
92  import missionManager from '@ohos.application.missionManager';
93
94  console.log('registerMissionListener');
95  let listenerid = missionManager.registerMissionListener({
96    onMissionCreated: (mission) => {console.log('--------onMissionCreated-------');},
97    onMissionDestroyed: (mission) => {console.log('--------onMissionDestroyed-------');},
98    onMissionSnapshotChanged: (mission) => {console.log('--------onMissionSnapshotChanged-------');},
99    onMissionMovedToFront: (mission) => {console.log('--------onMissionMovedToFront-------');},
100    onMissionIconUpdated: (mission, icon) => {console.log('--------onMissionIconUpdated-------');},
101    onMissionClosed: (mission) => {console.log('--------onMissionClosed-------');},
102    onMissionLabelUpdated: (mission) => {console.log('--------onMissionLabelUpdated-------');}
103  });
104
105  missionManager.unregisterMissionListener(listenerid, (error) => {
106      console.error(`unregisterMissionListener fail, error: ${error}`);
107  });
108```
109
110
111## missionManager.unregisterMissionListener
112
113unregisterMissionListener(listenerId: number): Promise&lt;void&gt;
114
115反注册任务状态监听器。使用Promise异步回调。
116
117**需要权限**:ohos.permission.MANAGE_MISSIONS
118
119**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
120
121**系统接口**:此接口为系统接口。
122
123**参数:**
124
125  | 参数名 | 类型 | 必填 | 说明 |
126  | -------- | -------- | -------- | -------- |
127  | listenerId | number | 是 | 系统任务状态监听器的index值,和监听器一一对应,由registerMissionListener方法返回。 |
128
129**返回值:**
130
131  | 类型 | 说明 |
132  | -------- | -------- |
133  | Promise&lt;void&gt; | Promise对象。无返回结果的Promise对象。 |
134
135**示例:**
136
137```ts
138  import missionManager from '@ohos.application.missionManager';
139  import { BusinessError } from '@ohos.base';
140
141  console.log('registerMissionListener');
142  let listenerid = missionManager.registerMissionListener({
143    onMissionCreated: (mission) => {console.log('--------onMissionCreated-------');},
144    onMissionDestroyed: (mission) => {console.log('--------onMissionDestroyed-------');},
145    onMissionSnapshotChanged: (mission) => {console.log('--------onMissionSnapshotChanged-------');},
146    onMissionMovedToFront: (mission) => {console.log('--------onMissionMovedToFront-------');},
147    onMissionIconUpdated: (mission, icon) => {console.log('--------onMissionIconUpdated-------');},
148    onMissionClosed: (mission) => {console.log('--------onMissionClosed-------');},
149    onMissionLabelUpdated: (mission) => {console.log('--------onMissionLabelUpdated-------');}
150  });
151
152  missionManager.unregisterMissionListener(listenerid).catch((error: BusinessError) => {
153      console.error(`unregisterMissionListener fail, error: ${error}`);
154  });
155```
156
157
158## missionManager.getMissionInfo
159
160getMissionInfo(deviceId: string, missionId: number, callback: AsyncCallback&lt;MissionInfo&gt;): void
161
162获取单个任务信息。使用callback异步回调。
163
164**需要权限**:ohos.permission.MANAGE_MISSIONS
165
166**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
167
168**系统接口**:此接口为系统接口。
169
170**参数:**
171
172  | 参数名 | 类型 | 必填 | 说明 |
173  | -------- | -------- | -------- | -------- |
174  | deviceId | string | 是 | 设备ID,本机默认为空字符串。 |
175  | missionId | number | 是 | 任务ID。 |
176  | callback | AsyncCallback&lt;[MissionInfo](js-apis-inner-application-missionInfo-sys.md)&gt; | 是 | 回调函数,返回任务信息。 |
177
178**示例:**
179
180  ```ts
181  import missionManager from '@ohos.application.missionManager';
182
183  let missionId: number = 0;
184
185  missionManager.getMissionInfo('', missionId, (error, mission) => {
186    if (error.code) {
187      console.error(`getMissionInfo failed, error.code: ${error.code}, error.message: ${error.message}`);
188      return;
189    }
190
191    console.log(`mission.missionId = ${mission.missionId}`);
192    console.log(`mission.runningState = ${mission.runningState}`);
193    console.log(`mission.lockedState = ${mission.lockedState}`);
194    console.log(`mission.timestamp = ${mission.timestamp}`);
195    console.log(`mission.label = ${mission.label}`);
196    console.log(`mission.iconPath = ${mission.iconPath}`);
197  });
198  ```
199
200
201## missionManager.getMissionInfo
202
203getMissionInfo(deviceId: string, missionId: number): Promise&lt;MissionInfo&gt;
204
205获取单个任务信息。使用Promise异步回调。
206
207**需要权限**:ohos.permission.MANAGE_MISSIONS
208
209**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
210
211**系统接口**:此接口为系统接口。
212
213**参数:**
214
215  | 参数名 | 类型 | 必填 | 说明 |
216  | -------- | -------- | -------- | -------- |
217  | deviceId | string | 是 | 设备ID,本机默认为空字符串。 |
218  | missionId | number | 是 | 任务ID。 |
219
220**返回值:**
221
222  | 类型 | 说明 |
223  | -------- | -------- |
224  | Promise&lt;[MissionInfo](js-apis-inner-application-missionInfo-sys.md)&gt; | Promise对象,返回任务信息。 |
225
226**示例:**
227
228  ```ts
229  import missionManager from '@ohos.application.missionManager';
230  import { BusinessError } from '@ohos.base';
231
232  let testMissionId = 1;
233try {
234    missionManager.getMissionInfo('', testMissionId).then((data) => {
235        console.info(`getMissionInfo successfully. Data: ${JSON.stringify(data)}`);
236    }).catch((error: BusinessError) => {
237        console.error(`getMissionInfo failed. Cause: ${error.message}`);
238    });
239} catch (error) {
240    console.error(`getMissionInfo failed. Cause: ${error.message}`);
241}
242  ```
243
244
245## missionManager.getMissionInfos
246
247getMissionInfos(deviceId: string, numMax: number, callback: AsyncCallback&lt;Array&lt;MissionInfo&gt;&gt;): void
248
249获取所有任务信息。使用callback异步回调。
250
251**需要权限**:ohos.permission.MANAGE_MISSIONS
252
253**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
254
255**系统接口**:此接口为系统接口。
256
257**参数:**
258
259  | 参数名 | 类型 | 必填 | 说明 |
260  | -------- | -------- | -------- | -------- |
261  | deviceId | string | 是 | 设备ID,本机默认为空字符串。 |
262  | numMax | number | 是 | 任务信息数量上限。 |
263  | callback | AsyncCallback&lt;Array&lt;[MissionInfo](js-apis-inner-application-missionInfo-sys.md)&gt;&gt; | 是 | 回调函数,返回任务信息数组。 |
264
265**示例:**
266
267  ```ts
268  import missionManager from '@ohos.application.missionManager';
269
270  missionManager.getMissionInfos('', 10, (error, missions) => {
271      if (error.code) {
272          console.error(`getMissionInfos failed, error.code: ${error.code}, error.message: ${error.message}`);
273          return;
274      }
275      console.log(`size = ${missions.length}`);
276      console.log(`missions = ${JSON.stringify(missions)}`);
277  });
278  ```
279
280
281## missionManager.getMissionInfos
282
283getMissionInfos(deviceId: string, numMax: number): Promise&lt;Array&lt;MissionInfo&gt;&gt;
284
285获取所有任务信息。使用Promise异步回调。
286
287**需要权限**:ohos.permission.MANAGE_MISSIONS
288
289**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
290
291**系统接口**:此接口为系统接口。
292
293**参数:**
294
295  | 参数名 | 类型 | 必填 | 说明 |
296  | -------- | -------- | -------- | -------- |
297  | deviceId | string | 是 | 设备ID,本机默认为空字符串。 |
298  | numMax | number | 是 | 任务信息数量上限。 |
299
300**返回值:**
301
302  | 类型 | 说明 |
303  | -------- | -------- |
304  | Promise&lt;Array&lt;[MissionInfo](js-apis-inner-application-missionInfo-sys.md)&gt;&gt; | Promise对象,返回任务信息数组。 |
305
306**示例:**
307
308  ```ts
309  import missionManager from '@ohos.application.missionManager';
310  import { BusinessError } from '@ohos.base';
311
312  try {
313    missionManager.getMissionInfos('', 10).then((data) => {
314        console.info(`getMissionInfos successfully. Data: ${JSON.stringify(data)}`);
315    }).catch((error: BusinessError) => {
316        console.error(`getMissionInfos failed. Cause: ${error.message}`);
317    });
318} catch (error) {
319    console.error(`getMissionInfos failed. Cause: ${error.message}`);
320}
321  ```
322
323
324## missionManager.getMissionSnapShot
325
326getMissionSnapShot(deviceId: string, missionId: number, callback: AsyncCallback&lt;MissionSnapshot&gt;): void
327
328获取任务快照。使用callback异步回调。
329
330**需要权限**:ohos.permission.MANAGE_MISSIONS
331
332**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
333
334**系统接口**:此接口为系统接口。
335
336**参数:**
337
338  | 参数名 | 类型 | 必填 | 说明 |
339  | -------- | -------- | -------- | -------- |
340  | deviceId | string | 是 | 设备ID,本机默认为空字符串。 |
341  | missionId | number | 是 | 任务ID。 |
342  | callback | AsyncCallback&lt;[MissionSnapshot](js-apis-inner-application-missionSnapshot-sys.md)&gt; | 是 | 回调函数,返回任务快照信息。 |
343
344**示例:**
345
346  ```ts
347  import missionManager from '@ohos.application.missionManager';
348
349  let testMissionId = 2;
350try {
351    missionManager.getMissionSnapShot('', testMissionId, (err, data) => {
352        if (err) {
353            console.error(`getMissionSnapShot failed: ${err.message}`);
354        } else {
355            console.info(`getMissionSnapShot successfully: ${JSON.stringify(data)}`);
356        }
357    });
358} catch (err) {
359    console.error(`getMissionSnapShot failed: ${err.message}`);
360}
361  ```
362
363
364## missionManager.getMissionSnapShot
365
366getMissionSnapShot(deviceId: string, missionId: number): Promise&lt;MissionSnapshot&gt;
367
368获取任务快照。使用Promise异步回调。
369
370**需要权限**:ohos.permission.MANAGE_MISSIONS
371
372**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
373
374**系统接口**:此接口为系统接口。
375
376**参数:**
377
378  | 参数名 | 类型 | 必填 | 说明 |
379  | -------- | -------- | -------- | -------- |
380  | deviceId | string | 是 | 设备ID,本机默认为空字符串。 |
381  | missionId | number | 是 | 任务ID。 |
382
383**返回值:**
384
385  | 类型 | 说明 |
386  | -------- | -------- |
387  | Promise&lt;[MissionSnapshot](js-apis-inner-application-missionSnapshot-sys.md)&gt; | Promise对象,返回任务快照信息。 |
388
389**示例:**
390
391  ```ts
392  import missionManager from '@ohos.application.missionManager';
393  import { BusinessError } from '@ohos.base';
394
395  let testMissionId = 2;
396try {
397    missionManager.getMissionSnapShot('', testMissionId).then((data) => {
398        console.info(`getMissionSnapShot successfully. Data: ${JSON.stringify(data)}`);
399    }).catch((error: BusinessError) => {
400        console.error(`getMissionSnapShot failed. Cause: ${error.message}`);
401    });
402} catch (error) {
403    console.error(`getMissionSnapShot failed. Cause: ${error.message}`);
404}
405  ```
406
407## missionManager.lockMission
408
409lockMission(missionId: number, callback: AsyncCallback&lt;void&gt;): void
410
411锁定指定任务id的任务。使用callback异步回调。
412
413**需要权限**:ohos.permission.MANAGE_MISSIONS
414
415**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
416
417**系统接口**:此接口为系统接口。
418
419**参数:**
420
421  | 参数名 | 类型 | 必填 | 说明 |
422  | -------- | -------- | -------- | -------- |
423  | missionId | number | 是 | 任务ID。 |
424  | callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,当锁定指定任务id的任务成功,err为undefined,否则为错误对象。 |
425
426**示例:**
427
428  ```ts
429  import missionManager from '@ohos.application.missionManager';
430
431  let testMissionId = 2;
432try {
433    missionManager.lockMission(testMissionId, (err, data) => {
434        if (err) {
435            console.error(`lockMission failed: ${err.message}`);
436        } else {
437            console.info(`lockMission successfully: ${JSON.stringify(data)}`);
438        }
439    });
440} catch (err) {
441    console.error(`lockMission failed: ${err.message}`);
442}
443  ```
444
445
446## missionManager.lockMission
447
448lockMission(missionId: number): Promise&lt;void&gt;
449
450锁定指定任务id的任务。使用Promise异步回调。
451
452**需要权限**:ohos.permission.MANAGE_MISSIONS
453
454**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
455
456**系统接口**:此接口为系统接口。
457
458**参数:**
459
460  | 参数名 | 类型 | 必填 | 说明 |
461  | -------- | -------- | -------- | -------- |
462  | missionId | number | 是 | 任务ID。 |
463
464**返回值:**
465
466  | 类型 | 说明 |
467  | -------- | -------- |
468  | Promise&lt;void&gt; | Promise对象。无返回结果的Promise对象。 |
469
470**示例:**
471
472  ```ts
473  import missionManager from '@ohos.application.missionManager';
474  import { BusinessError } from '@ohos.base';
475
476  let testMissionId = 2;
477try {
478    missionManager.lockMission(testMissionId).then((data) => {
479        console.info(`lockMission successfully. Data: ${JSON.stringify(data)}`);
480    }).catch((error: BusinessError) => {
481        console.error(`lockMission failed. Cause: ${error.message}`);
482    });
483} catch (error) {
484    console.error(`lockMission failed. Cause: ${error.message}`);
485}
486  ```
487
488
489## missionManager.unlockMission
490
491unlockMission(missionId: number, callback: AsyncCallback&lt;void&gt;): void
492
493解锁指定任务id的任务。使用callback异步回调。
494
495**需要权限**:ohos.permission.MANAGE_MISSIONS
496
497**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
498
499**系统接口**:此接口为系统接口。
500
501**参数:**
502
503| 参数名 | 类型 | 必填 | 说明 |
504| -------- | -------- | -------- | -------- |
505| missionId | number | 是 | 任务ID。 |
506| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,当解锁指定任务id的任务成功,err为undefined,否则为错误对象。 |
507
508**示例:**
509
510  ```ts
511  import missionManager from '@ohos.application.missionManager';
512
513  let testMissionId = 2;
514try {
515    missionManager.unlockMission(testMissionId, (err, data) => {
516        if (err) {
517            console.error(`unlockMission failed: ${err.message}`);
518        } else {
519            console.info(`unlockMission successfully: ${JSON.stringify(data)}`);
520        }
521    });
522} catch (err) {
523    console.error(`unlockMission failed: ${err.message}`);
524}
525  ```
526
527
528## missionManager.unlockMission
529
530unlockMission(missionId: number): Promise&lt;void&gt;
531
532解锁指定任务id的任务。使用Promise异步回调。
533
534**需要权限**:ohos.permission.MANAGE_MISSIONS
535
536**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
537
538**系统接口**:此接口为系统接口。
539
540**参数:**
541
542  | 参数名 | 类型 | 必填 | 说明 |
543  | -------- | -------- | -------- | -------- |
544  | missionId | number | 是 | 任务ID。 |
545
546**返回值:**
547
548  | 类型 | 说明 |
549  | -------- | -------- |
550  | Promise&lt;void&gt; | Promise对象。无返回结果的Promise对象。 |
551
552**示例:**
553
554  ```ts
555  import missionManager from '@ohos.application.missionManager';
556  import { BusinessError } from '@ohos.base';
557
558  let testMissionId = 2;
559try {
560    missionManager.unlockMission(testMissionId).then((data) => {
561        console.info(`unlockMission successfully. Data: ${JSON.stringify(data)}`);
562    }).catch((error: BusinessError) => {
563        console.error(`unlockMission failed. Cause: ${error.message}`);
564    });
565} catch (error) {
566    console.error(`unlockMission failed. Cause: ${error.message}`);
567}
568  ```
569
570
571## missionManager.clearMission
572
573clearMission(missionId: number, callback: AsyncCallback&lt;void&gt;): void
574
575清理指定任务id的任务,无论该任务是否被锁定。使用callback异步回调。
576
577**需要权限**:ohos.permission.MANAGE_MISSIONS
578
579**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
580
581**系统接口**:此接口为系统接口。
582
583**参数:**
584
585  | 参数名 | 类型 | 必填 | 说明 |
586  | -------- | -------- | -------- | -------- |
587  | missionId | number | 是 | 任务ID。 |
588  | callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,当清理指定任务id的任务成功,err为undefined,否则为错误对象。 |
589
590**示例:**
591
592  ```ts
593  import missionManager from '@ohos.application.missionManager';
594
595  let testMissionId = 2;
596try {
597    missionManager.clearMission(testMissionId, (err, data) => {
598        if (err) {
599            console.error(`clearMission failed: ${err.message}`);
600        } else {
601            console.info(`clearMission successfully: ${JSON.stringify(data)}`);
602        }
603    });
604} catch (err) {
605    console.error(`clearMission failed: ${err.message}`);
606}
607  ```
608
609
610## missionManager.clearMission
611
612clearMission(missionId: number): Promise&lt;void&gt;
613
614清理指定任务id的任务,无论该任务是否被锁定。使用Promise异步回调。
615
616**需要权限**:ohos.permission.MANAGE_MISSIONS
617
618**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
619
620**系统接口**:此接口为系统接口。
621
622**参数:**
623
624  | 参数名 | 类型 | 必填 | 说明 |
625  | -------- | -------- | -------- | -------- |
626  | missionId | number | 是 | 任务ID。 |
627
628**返回值:**
629
630  | 类型 | 说明 |
631  | -------- | -------- |
632  | Promise&lt;void&gt; | Promise对象。无返回结果的Promise对象。 |
633
634**示例:**
635
636  ```ts
637  import missionManager from '@ohos.application.missionManager';
638  import { BusinessError } from '@ohos.base';
639
640  let testMissionId = 2;
641try {
642    missionManager.clearMission(testMissionId).then((data) => {
643        console.info(`clearMission successfully. Data: ${JSON.stringify(data)}`);
644    }).catch((error: BusinessError) => {
645        console.error(`clearMission failed. Cause: ${error.message}`);
646    });
647} catch (error) {
648    console.error(`clearMission failed. Cause: ${error.message}`);
649}
650  ```
651
652
653## missionManager.clearAllMissions
654
655clearAllMissions(callback: AsyncCallback&lt;void&gt;): void
656
657清理所有未锁定的任务,使用callback异步回调。
658
659**需要权限**:ohos.permission.MANAGE_MISSIONS
660
661**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
662
663**系统接口**:此接口为系统接口。
664
665**参数:**
666
667  | 参数名 | 类型 | 必填 | 说明 |
668  | -------- | -------- | -------- | -------- |
669  | callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,当清理所有未锁定的任务成功,err为undefined,否则为错误对象。 |
670
671**示例:**
672
673  ```ts
674  import missionManager from '@ohos.application.missionManager'
675
676  try {
677    missionManager.clearAllMissions(err => {
678        if (err) {
679            console.error('clearAllMissions failed: ${err.message}');
680        } else {
681            console.info('clearAllMissions successfully.');
682        }
683    });
684} catch (err) {
685    console.error('clearAllMissions failed: ${err.message}');
686}
687  ```
688
689
690## missionManager.clearAllMissions
691
692clearAllMissions(): Promise&lt;void&gt;
693
694清理所有未锁定的任务。使用Promise异步回调。
695
696**需要权限**:ohos.permission.MANAGE_MISSIONS
697
698**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
699
700**系统接口**:此接口为系统接口。
701
702**返回值:**
703
704  | 类型 | 说明 |
705  | -------- | -------- |
706  | Promise&lt;void&gt; | Promise对象。无返回结果的Promise对象。 |
707
708**示例:**
709
710  ```ts
711  import missionManager from '@ohos.application.missionManager';
712  import { BusinessError } from '@ohos.base';
713
714  try {
715    missionManager.clearAllMissions().then((data) => {
716        console.info(`clearAllMissions successfully. Data: ${JSON.stringify(data)}`);
717    }).catch((err: BusinessError) => {
718        console.error(`clearAllMissions failed: ${err.message}`);
719    });
720} catch (err) {
721    console.error(`clearAllMissions failed: ${err.message}`);
722}
723  ```
724
725
726## missionManager.moveMissionToFront
727
728moveMissionToFront(missionId: number, callback: AsyncCallback&lt;void&gt;): void
729
730把指定任务id的任务切到前台。使用callback异步回调。
731
732**需要权限**:ohos.permission.MANAGE_MISSIONS
733
734**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
735
736**系统接口**:此接口为系统接口。
737
738**参数:**
739
740  | 参数名 | 类型 | 必填 | 说明 |
741  | -------- | -------- | -------- | -------- |
742  | missionId | number | 是 | 任务ID。 |
743  | callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,当把指定任务id的任务切到前台成功,err为undefined,否则为错误对象。 |
744
745**示例:**
746
747  ```ts
748  import missionManager from '@ohos.application.missionManager';
749
750  let testMissionId = 2;
751try {
752    missionManager.moveMissionToFront(testMissionId, (err, data) => {
753        if (err) {
754            console.error(`moveMissionToFront failed: ${err.message}`);
755        } else {
756            console.info(`moveMissionToFront successfully: ${JSON.stringify(data)}`);
757        }
758    });
759} catch (err) {
760    console.error(`moveMissionToFront failed: ${err.message}`);
761}
762  ```
763
764
765## missionManager.moveMissionToFront
766
767moveMissionToFront(missionId: number, options: StartOptions, callback: AsyncCallback&lt;void&gt;): void
768
769把指定任务id的任务切到前台,同时指定任务切换到前台时的启动参数,例如窗口模式、设备ID等。使用callback异步回调。
770
771**需要权限**:ohos.permission.MANAGE_MISSIONS
772
773**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
774
775**系统接口**:此接口为系统接口。
776
777**参数:**
778
779  | 参数名 | 类型 | 必填 | 说明 |
780  | -------- | -------- | -------- | -------- |
781  | missionId | number | 是 | 任务ID。 |
782  | options | [StartOptions](js-apis-app-ability-startOptions.md) | 是 | 启动参数选项,用于指定任务切到前台时的窗口模式,设备ID等。 |
783  | callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,当把指定任务id的任务切到前台成功,err为undefined,否则为错误对象。 |
784
785**示例:**
786
787  ```ts
788  import missionManager from '@ohos.application.missionManager';
789
790  let testMissionId = 2;
791try {
792    missionManager.moveMissionToFront(testMissionId, {windowMode : 101}, (err, data) => {
793        if (err) {
794            console.error(`moveMissionToFront failed: ${err.message}`);
795        } else {
796            console.info(`moveMissionToFront successfully: ${JSON.stringify(data)}`);
797        }
798    });
799} catch (err) {
800    console.error(`moveMissionToFront failed: ${err.message}`);
801}
802  ```
803
804
805## missionManager.moveMissionToFront
806
807moveMissionToFront(missionId: number, options?: StartOptions): Promise&lt;void&gt;
808
809把指定任务id的任务切到前台,同时指定任务切换到前台时的启动参数,例如窗口模式、设备ID等。使用Promise异步回调。
810
811**需要权限**:ohos.permission.MANAGE_MISSIONS
812
813**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
814
815**系统接口**:此接口为系统接口。
816
817**参数:**
818
819  | 参数名 | 类型 | 必填 | 说明 |
820  | -------- | -------- | -------- | -------- |
821  | missionId | number | 是 | 任务ID。 |
822  | options | [StartOptions](js-apis-app-ability-startOptions.md) | 否 | 启动参数选项,用于指定任务切到前台时的窗口模式,设备ID等。 |
823
824**返回值:**
825
826  | 类型 | 说明 |
827  | -------- | -------- |
828  | Promise&lt;void&gt; | Promise对象。无返回结果的Promise对象。 |
829
830**示例:**
831
832  ```ts
833  import missionManager from '@ohos.application.missionManager';
834  import { BusinessError } from '@ohos.base';
835
836  let testMissionId = 2;
837try {
838    missionManager.moveMissionToFront(testMissionId).then((data) => {
839        console.info(`moveMissionToFront successfully. Data: ${JSON.stringify(data)}`);
840    }).catch((error: BusinessError) => {
841        console.error(`moveMissionToFront failed. Cause: ${error.message}`);
842    });
843} catch (error) {
844    console.error(`moveMissionToFront failed. Cause: ${error.message}`);
845}
846  ```