1# Setting the Icon and Name of a Mission Snapshot 2 3Setting a unique icon and name for each mission snapshot of an application helps you better manage the missions and functions of the application. 4 5By default, the **icon** and **label** fields in the [abilities tag](../quick-start/module-configuration-file.md#abilities) of the [module.json5 file](../quick-start/module-configuration-file.md) are used to set the icon and label. 6 7Figure 1 Mission snapshot of a UIAbility 8 9 10 11You can also use [UIAbilityContext.setMissionIcon()](../reference/apis-ability-kit/js-apis-inner-application-uiAbilityContext-sys.md#uiabilitycontextsetmissionicon) and [UIAbilityContext.setMissionLabel()](../reference/apis-ability-kit/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextsetmissionlabel) to customize the icon and name for a mission snapshot. For example, for a UIAbility instance in multiton mode, you can configure the icon and name for each mission snapshot based on different functions. 12 13This document describes the following operations: 14 15- [Setting a Mission Snapshot Icon (for System Applications Only)](#setting-a-mission-snapshot-icon-for-system-applications-only) 16- [Setting a Mission Snapshot Name](#setting-a-mission-snapshot-name) 17 18## Setting a Mission Snapshot Icon (for System Applications Only) 19 20Call [UIAbilityContext.setMissionIcon()](../reference/apis-ability-kit/js-apis-inner-application-uiAbilityContext-sys.md#uiabilitycontextsetmissionicon) to set the icon of a mission snapshot. 21 22For details about how to obtain the context, see [Obtaining the Context of UIAbility](uiability-usage.md#obtaining-the-context-of-uiability). For details about how to obtain the PixelMap information in the example, see [Image Decoding](../media/image/image-decoding.md). 23 24```ts 25import { common } from '@kit.AbilityKit'; 26import { BusinessError } from '@kit.BasicServicesKit'; 27import { hilog } from '@kit.PerformanceAnalysisKit'; 28 29const TAG: string = 'EntryAbility'; 30const DOMAIN_NUMBER: number = 0xFF00; 31 32// ... 33let context: common.UIAbilityContext = this.context; // UIAbilityContext 34 35// ... // Obtain a pixelMap object. 36 37// Set an icon for the mission snapshot. 38context.setMissionIcon(pixelMap, (err: BusinessError) => { 39 if (err.code) { 40 hilog.error(DOMAIN_NUMBER, TAG, `Failed to set mission icon. Code is ${err.code}, message is ${err.message}`); 41 } else { 42 hilog.info(DOMAIN_NUMBER, TAG, `Success to set mission icon.`); 43 } 44}) 45``` 46 47The display effect is shown below. 48 49Figure 2 Mission snapshot icon 50 51 52 53## Setting a Mission Snapshot Name 54 55Call [UIAbilityContext.setMissionLabel()](../reference/apis-ability-kit/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextsetmissionlabel) to set the name of a mission snapshot. 56 57```ts 58import { common } from '@kit.AbilityKit'; 59import { BusinessError } from '@kit.BasicServicesKit'; 60import { hilog } from '@kit.PerformanceAnalysisKit'; 61 62const TAG: string = 'EntryAbility'; 63const DOMAIN_NUMBER: number = 0xFF00; 64 65// ... 66let context: common.UIAbilityContext = this.context; // UIAbilityContext 67// Set a name for the mission snapshot. 68context.setMissionLabel('test').then(() => { 69 hilog.info(DOMAIN_NUMBER, TAG, 'Succeeded in seting mission label.'); 70}).catch((err: BusinessError) => { 71 hilog.error(DOMAIN_NUMBER, TAG, `Failed to set mission label. Code is ${err.code}, message is ${err.message}`); 72}); 73``` 74 75The display effect is shown below. 76 77Figure 3 Mission snapshot name 78 79 80