• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ConnectOptions
2
3在连接指定的后台服务时作为入参,用于接收连接过程中的状态变化,如作为[connectServiceExtensionAbility](js-apis-inner-application-uiAbilityContext.md#uiabilitycontextconnectserviceextensionability)的入参,连接指定的ServiceExtensionAbility。
4
5> **说明:**
6>
7> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import common from '@ohos.app.ability.common';
13```
14
15## 属性
16
17**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
18
19|    名称      | 类型       | 必填   | 说明                        |
20| ------------ | -------- | ---- | ------------------------- |
21| onConnect    | function | 是    | 建立连接时的回调函数。      |
22| onDisconnect | function | 是    | 断开连接时的回调函数。           |
23| onFailed     | function | 是    | 连接失败时的回调函数。 |
24
25**示例:**
26
27  ```ts
28  import UIAbility from '@ohos.app.ability.UIAbility';
29  import common from '@ohos.app.ability.common';
30  import Want from '@ohos.app.ability.Want';
31  import AbilityConstant from '@ohos.app.ability.AbilityConstant';
32  import bundleManager from '@ohos.bundle.bundleManager';
33  import rpc from '@ohos.rpc';
34
35  let connectWant: Want = {
36    bundleName: 'com.example.myapp',
37    abilityName: 'MyAbility'
38  };
39
40  let connectOptions: common.ConnectOptions = {
41    onConnect(elementName: bundleManager.ElementName, remote: rpc.IRemoteObject) {
42      console.log(`onConnect elementName: ${elementName}`);
43    },
44    onDisconnect(elementName: bundleManager.ElementName) {
45      console.log(`onDisconnect elementName: ${elementName}`);
46    },
47    onFailed(code: number) {
48      console.error(`onFailed code: ${code}`);
49    }
50  };
51
52
53  class EntryAbility extends UIAbility {
54    onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
55      let connection: number = this.context.connectServiceExtensionAbility(connectWant, connectOptions);
56    }
57  }
58  ```