1# @ohos.app.ability.AtomicServiceOptions (AtomicServiceOptions) 2 3AtomicServiceOptions可以作为[openAtomicService()](js-apis-inner-application-uiAbilityContext.md#uiabilitycontextopenatomicservice12)的入参,用于携带参数。继承于[StartOptions](js-apis-app-ability-startOptions.md)。 4 5> **说明:** 6> 7> 本模块首批接口从API version 12 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9> 本模块接口仅可在Stage模型下使用。 10 11## 导入模块 12 13```ts 14import { AtomicServiceOptions } from '@kit.AbilityKit'; 15``` 16 17## 属性 18 19**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 20 21**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 22 23| 名称 | 类型 | 只读 | 可选 | 说明 | 24| -------- | -------- | -------- | -------- | -------- | 25| [flags](js-apis-app-ability-wantConstant.md#flags) | number | 否 | 是 | 系统处理该次启动的方式。<br />例如通过wantConstant.Flags.FLAG_INSTALL_ON_DEMAND表示使用免安装能力。 | 26| parameters | Record\<string, Object> | 否 | 是 | 表示额外参数描述。具体描述参考[Want](js-apis-app-ability-want.md)中parameters字段描述。 | 27 28**示例:** 29 30```ts 31import { UIAbility, AtomicServiceOptions, common, wantConstant } from '@kit.AbilityKit'; 32import { BusinessError } from '@kit.BasicServicesKit'; 33 34export default class EntryAbility extends UIAbility { 35 onForeground() { 36 let appId: string = '6918661953712445909'; 37 let options: AtomicServiceOptions = { 38 flags: wantConstant.Flags.FLAG_INSTALL_ON_DEMAND, 39 parameters: { 40 "demo.result": 123456 41 } 42 }; 43 44 try { 45 this.context.openAtomicService(appId, options) 46 .then((result: common.AbilityResult) => { 47 // 执行正常业务 48 console.info('openAtomicService succeed'); 49 }) 50 .catch((err: BusinessError) => { 51 // 处理业务逻辑错误 52 console.error(`openAtomicService failed, code is ${err.code}, message is ${err.message}`); 53 }); 54 } catch (err) { 55 // 处理入参错误异常 56 let code = (err as BusinessError).code; 57 let message = (err as BusinessError).message; 58 console.error(`openAtomicService failed, code is ${code}, message is ${message}`); 59 } 60 } 61} 62``` 63