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