1# AbilityStartCallback 2 3定义拉起UIExtensionAbility执行结果的回调。 4 5> **说明:** 6> 7> 本模块首批接口从API version 11开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9> 本模块接口仅可在Stage模型下使用。 10> 11> 从API version 11开始,本模块接口支持在原子化服务中使用。 12 13## 导入模块 14 15```ts 16import { common } from '@kit.AbilityKit'; 17``` 18 19## AbilityStartCallback 20 21### onError 22 23onError(code: number, name: string, message: string): void 24 25拉起UIExtensionAbility执行失败的回调。 26 27**原子化服务API**:从API version 11开始,该接口支持在原子化服务中使用。 28 29**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 30 31**参数:** 32 33| 参数名 | 类型 | 必填 | 说明 | 34| -------- | ---------------------- | ---- | ------------- | 35| code | number | 是 | 拉起UIExtensionAbility执行失败时返回的结果码。 | 36| name | string | 是 | 拉起UIExtensionAbility执行失败时返回的名称。 | 37| message | string | 是 | 拉起UIExtensionAbility执行失败时返回的错误信息。 | 38 39**示例:** 40 41```ts 42import { UIAbility, common } from '@kit.AbilityKit'; 43import { BusinessError } from '@kit.BasicServicesKit'; 44 45export default class EntryAbility extends UIAbility { 46 onForeground() { 47 let wantParam: Record<string, Object> = { 48 'time': '2023-10-23 20:45', 49 }; 50 let abilityStartCallback: common.AbilityStartCallback = { 51 onError: (code: number, name: string, message: string) => { 52 console.log(`code:` + code + `name:` + name + `message:` + message); 53 }, 54 onResult: (abilityResult: common.AbilityResult) => { 55 console.log(`resultCode:` + abilityResult.resultCode + `bundleName:` + abilityResult.want?.bundleName); 56 } 57 }; 58 59 this.context.startAbilityByType("photoEditor", wantParam, abilityStartCallback, (err: BusinessError) => { 60 if (err) { 61 console.error(`startAbilityByType fail, err: ${JSON.stringify(err)}`); 62 } else { 63 console.log(`success`); 64 } 65 }); 66 } 67} 68``` 69 70### onResult<sup>12+<sup> 71 72onResult?(parameter: AbilityResult): void 73 74拉起UIExtensionAbility终止时的回调。 75 76**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 77 78**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 79 80**参数:** 81 82| 参数名 | 类型 | 必填 | 说明 | 83| -------- | ---------------------- | ---- | ------------- | 84| parameter | [AbilityResult](js-apis-inner-ability-abilityResult.md) | 是 | 当调用[terminateSelfWithResult](js-apis-inner-application-uiExtensionContext.md#uiextensioncontextterminateselfwithresult12)方法终止UIExtensionAbility时返回的结果。 | 85 86**示例:** 87 88```ts 89import { UIAbility, common } from '@kit.AbilityKit'; 90import { BusinessError } from '@kit.BasicServicesKit'; 91 92export default class EntryAbility extends UIAbility { 93 onForeground() { 94 let wantParam: Record<string, Object> = { 95 'time': '2023-10-23 20:45', 96 }; 97 let abilityStartCallback: common.AbilityStartCallback = { 98 onError: (code: number, name: string, message: string) => { 99 console.log(`code:` + code + `name:` + name + `message:` + message); 100 }, 101 onResult: (abilityResult: common.AbilityResult) => { 102 console.log(`resultCode:` + abilityResult.resultCode + `bundleName:` + abilityResult.want?.bundleName); 103 } 104 }; 105 106 this.context.startAbilityByType("photoEditor", wantParam, abilityStartCallback, (err: BusinessError) => { 107 if (err) { 108 console.error(`startAbilityByType fail, err: ${JSON.stringify(err)}`); 109 } else { 110 console.log(`success`); 111 } 112 }); 113 } 114} 115``` 116