diff --git a/zh-cn/application-dev/reference/apis/js-apis-ability-context.md b/zh-cn/application-dev/reference/apis/js-apis-ability-context.md deleted file mode 100644 index 1879a7eaa8aa05b3c2100d26b9cafb48350f19f3..0000000000000000000000000000000000000000 --- a/zh-cn/application-dev/reference/apis/js-apis-ability-context.md +++ /dev/null @@ -1,1880 +0,0 @@ -# AbilityContext - -AbilityContext是Ability的上下文环境,继承自Context。 - -AbilityContext模块提供允许访问特定Ability的资源的能力,包括对Ability的启动、停止的设置、获取caller通信接口、拉起弹窗请求用户授权等。 - -> **说明:** -> -> - 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 -> - 本模块接口仅可在Stage模型下使用。 - -## 使用说明 - -在使用AbilityContext的功能前,需要通过Ability子类实例获取。 - -```ts -import Ability from '@ohos.app.ability.UIAbility'; - - let context = undefined; -class MainAbility extends Ability { - onWindowStageCreate(windowStage) { - context = this.context; - } -} -``` - -## 属性 - -**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core - -| 名称 | 类型 | 可读 | 可写 | 说明 | -| -------- | -------- | -------- | -------- | -------- | -| abilityInfo | [AbilityInfo](js-apis-bundleManager-abilityInfo.md) | 是 | 否 | Abilityinfo相关信息 | -| currentHapModuleInfo | [HapModuleInfo](js-apis-bundleManager-hapModuleInfo.md) | 是 | 否 | 当前hap包的信息 | -| config | [Configuration](js-apis-application-configuration.md) | 是 | 否 | 表示配置信息。 | - -## AbilityContext.startAbility - -startAbility(want: Want, callback: AsyncCallback<void>): void; - -启动Ability(callback形式)。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| callback | AsyncCallback<void> | 是 | callback形式返回启动结果 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - bundleName: 'com.example.myapp', - abilityName: 'MyAbility' - }; - - try { - this.context.startAbility(want, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startAbility failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startAbility succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - -## AbilityContext.startAbility - -startAbility(want: Want, options: StartOptions, callback: AsyncCallback<void>): void; - -启动Ability(callback形式)。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| options | [StartOptions](js-apis-app-ability-startOptions.md) | 是 | 启动Ability所携带的参数。 | -| callback | AsyncCallback<void> | 是 | callback形式返回启动结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let options = { - windowMode: 0 - }; - - try { - this.context.startAbility(want, options, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startAbility failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startAbility succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.startAbility - -startAbility(want: Want, options?: StartOptions): Promise<void>; - -启动Ability(promise形式)。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| options | [StartOptions](js-apis-app-ability-startOptions.md) | 否 | 启动Ability所携带的参数。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise<void> | Promise形式返回启动结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - bundleName: 'com.example.myapp', - abilityName: 'MyAbility' - }; - let options = { - windowMode: 0, - }; - - try { - this.context.startAbility(want, options) - .then((data) => { - // 执行正常业务 - console.log('startAbility succeed'); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('startAbility failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - -## AbilityContext.startAbilityForResult - -startAbilityForResult(want: Want, callback: AsyncCallback<AbilityResult>): void; - -启动一个Ability。Ability被启动后,有如下情况(callback形式): - - 正常情况下可通过调用[terminateSelfWithResult](#abilitycontextterminateselfwithresult)接口使之终止并且返回结果给调用方。 - - 异常情况下比如杀死Ability会返回异常信息给调用方, 异常信息中resultCode为-1。 - - 如果被启动的Ability模式是单实例模式, 不同应用多次调用该接口启动这个Ability,当这个Ability调用[terminateSelfWithResult](#abilitycontextterminateselfwithresult)接口使之终止时,只将正常结果返回给最后一个调用方, 其它调用方返回异常信息, 异常信息中resultCode为-1。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want |[Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| callback | AsyncCallback<[AbilityResult](js-apis-inner-ability-abilityResult.md)> | 是 | 执行结果回调函数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - - try { - this.context.startAbilityForResult(want, (error, result) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startAbilityForResult failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startAbilityForResult succeed, result.resultCode = ' + - result.resultCode); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.startAbilityForResult - -startAbilityForResult(want: Want, options: StartOptions, callback: AsyncCallback<AbilityResult>): void; - -启动一个Ability。Ability被启动后,有如下情况(callback形式): - - 正常情况下可通过调用[terminateSelfWithResult](#abilitycontextterminateselfwithresult)接口使之终止并且返回结果给调用方。 - - 异常情况下比如杀死Ability会返回异常信息给调用方, 异常信息中resultCode为-1。 - - 如果被启动的Ability模式是单实例模式, 不同应用多次调用该接口启动这个Ability,当这个Ability调用[terminateSelfWithResult](#abilitycontextterminateselfwithresult)接口使之终止时,只将正常结果返回给最后一个调用方, 其它调用方返回异常信息, 异常信息中resultCode为-1。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want |[Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| options | [StartOptions](js-apis-app-ability-startOptions.md) | 是 | 启动Ability所携带的参数。 | -| callback | AsyncCallback<[AbilityResult](js-apis-inner-ability-abilityResult.md)> | 是 | 执行结果回调函数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let options = { - windowMode: 0, - }; - - try { - this.context.startAbilityForResult(want, options, (error, result) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startAbilityForResult failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startAbilityForResult succeed, result.resultCode = ' + - result.resultCode); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - -## AbilityContext.startAbilityForResult - -startAbilityForResult(want: Want, options?: StartOptions): Promise<AbilityResult>; - -启动一个Ability。Ability被启动后,有如下情况(promise形式): - - 正常情况下可通过调用[terminateSelfWithResult](#abilitycontextterminateselfwithresult)接口使之终止并且返回结果给调用方。 - - 异常情况下比如杀死Ability会返回异常信息给调用方, 异常信息中resultCode为-1。 - - 如果被启动的Ability模式是单实例模式, 不同应用多次调用该接口启动这个Ability,当这个Ability调用[terminateSelfWithResult](#abilitycontextterminateselfwithresult)接口使之终止时,只将正常结果返回给最后一个调用方, 其它调用方返回异常信息, 异常信息中resultCode为-1。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| options | [StartOptions](js-apis-app-ability-startOptions.md) | 否 | 启动Ability所携带的参数。 | - - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise<[AbilityResult](js-apis-inner-ability-abilityResult.md)> | Promise形式返回执行结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - bundleName: 'com.example.myapp', - abilityName: 'MyAbility' - }; - let options = { - windowMode: 0, - }; - - try { - this.context.startAbilityForResult(want, options) - .then((result) => { - // 执行正常业务 - console.log('startAbilityForResult succeed, result.resultCode = ' + result.resultCode); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('startAbilityForResult failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.startAbilityForResultWithAccount - -startAbilityForResultWithAccount(want: Want, accountId: number, callback: AsyncCallback\): void; - -启动一个Ability并在该Ability帐号销毁时返回执行结果(callback形式)。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 跨应用场景下,目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | -| callback | AsyncCallback\<[AbilityResult](js-apis-inner-ability-abilityResult.md)\> | 是 | 启动Ability的回调函数,返回Ability结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - - try { - this.context.startAbilityForResultWithAccount(want, accountId, (error, result) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startAbilityForResultWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startAbilityForResultWithAccount succeed, result.resultCode = ' + - result.resultCode); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - -## AbilityContext.startAbilityForResultWithAccount - -startAbilityForResultWithAccount(want: Want, accountId: number, options: StartOptions, callback: AsyncCallback\): void; - -启动一个Ability并在该Ability帐号销毁时返回执行结果(callback形式)。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | -| options | [StartOptions](js-apis-app-ability-startOptions.md) | 是 | 启动Ability所携带的参数。 | -| callback | AsyncCallback\ | 是 | 启动Ability的回调函数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - let options = { - windowMode: 0 - }; - - try { - this.context.startAbilityForResultWithAccount(want, accountId, options, (error, result) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startAbilityForResultWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startAbilityForResultWithAccount succeed, result.resultCode = ' + - result.resultCode); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - -## AbilityContext.startAbilityForResultWithAccount - -startAbilityForResultWithAccount(want: Want, accountId: number, options?: StartOptions): Promise\; - -启动一个Ability并在该Ability帐号销毁时返回执行结果(promise形式)。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | -| options | [StartOptions](js-apis-app-ability-startOptions.md) | 否 | 启动Ability所携带的参数。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise<[AbilityResult](js-apis-inner-ability-abilityResult.md)> | 返回一个Promise,包含Ability结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - let options = { - windowMode: 0 - }; - - try { - this.context.startAbilityForResultWithAccount(want, accountId, options) - .then((result) => { - // 执行正常业务 - console.log('startAbilityForResultWithAccount succeed, result.resultCode = ' + - result.resultCode); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('startAbilityForResultWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` -## AbilityContext.startServiceExtensionAbility - -startServiceExtensionAbility(want: Want, callback: AsyncCallback\): void; - -启动一个新的ServiceExtensionAbility(callback形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| callback | AsyncCallback\ | 是 | 启动Ability的回调函数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - - try { - this.context.startServiceExtensionAbility(want, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startServiceExtensionAbility failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startServiceExtensionAbility succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.startServiceExtensionAbility - -startServiceExtensionAbility(want: Want): Promise\; - -启动一个新的ServiceExtensionAbility(Promise形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - - try { - this.context.startServiceExtensionAbility(want) - .then((data) => { - // 执行正常业务 - console.log('startServiceExtensionAbility succeed'); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('startServiceExtensionAbility failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.startServiceExtensionAbilityWithAccount - -startServiceExtensionAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback\): void; - -启动一个新的ServiceExtensionAbility(callback形式)。 - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | -| callback | AsyncCallback\ | 是 | 启动Ability的回调函数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - - try { - this.context.startServiceExtensionAbilityWithAccount(want, accountId, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startServiceExtensionAbilityWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startServiceExtensionAbilityWithAccount succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.startServiceExtensionAbilityWithAccount - -startServiceExtensionAbilityWithAccount(want: Want, accountId: number): Promise\; - -启动一个新的ServiceExtensionAbility(Promise形式)。 - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - - try { - this.context.startServiceExtensionAbilityWithAccount(want, accountId) - .then((data) => { - // 执行正常业务 - console.log('startServiceExtensionAbilityWithAccount succeed'); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('startServiceExtensionAbilityWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` -## AbilityContext.stopServiceExtensionAbility - -stopServiceExtensionAbility(want: Want, callback: AsyncCallback\): void; - -停止同一应用程序内的服务(callback形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| callback | AsyncCallback\ | 是 | 启动Ability的回调函数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - - try { - this.context.stopServiceExtensionAbility(want, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('stopServiceExtensionAbility failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('stopServiceExtensionAbility succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.stopServiceExtensionAbility - -stopServiceExtensionAbility(want: Want): Promise\; - -停止同一应用程序内的服务(Promise形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - - try { - this.context.stopServiceExtensionAbility(want) - .then((data) => { - // 执行正常业务 - console.log('stopServiceExtensionAbility succeed'); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('stopServiceExtensionAbility failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.stopServiceExtensionAbilityWithAccount - -stopServiceExtensionAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback\): void; - -使用帐户停止同一应用程序内的服务(callback形式)。 - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | -| callback | AsyncCallback\ | 是 | 启动Ability的回调函数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - - try { - this.context.stopServiceExtensionAbilityWithAccount(want, accountId, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('stopServiceExtensionAbilityWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('stopServiceExtensionAbilityWithAccount succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.stopServiceExtensionAbilityWithAccount - -stopServiceExtensionAbilityWithAccount(want: Want, accountId: number): Promise\; - -使用帐户停止同一应用程序内的服务(Promise形式)。 - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - - try { - this.context.stopServiceExtensionAbilityWithAccount(want, accountId) - .then((data) => { - // 执行正常业务 - console.log('stopServiceExtensionAbilityWithAccount succeed'); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('stopServiceExtensionAbilityWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.terminateSelf - -terminateSelf(callback: AsyncCallback<void>): void; - -停止Ability自身(callback形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| callback | AsyncCallback<void> | 是 | 回调函数,返回接口调用是否成功的结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - this.context.terminateSelf((error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('terminateSelf failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('terminateSelf succeed'); - }); - ``` - - -## AbilityContext.terminateSelf - -terminateSelf(): Promise<void>; - -停止Ability自身(promise形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise<void> | 返回一个Promise,包含接口的结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - this.context.terminateSelf().then((data) => { - // 执行正常业务 - console.log('terminateSelf succeed'); - }).catch((error) => { - // 处理业务逻辑错误 - console.log('terminateSelf failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - ``` - - -## AbilityContext.terminateSelfWithResult - -terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback<void>): void; - -停止当前的Ability。如果该Ability是通过调用[startAbilityForResult](#abilitycontextstartabilityforresult)接口被拉起的,调用terminateSelfWithResult接口时会将结果返回给调用者,如果该Ability不是通过调用[startAbilityForResult](#abilitycontextstartabilityforresult)接口被拉起的,调用terminateSelfWithResult接口时不会有结果返回给调用者(callback形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| parameter | [AbilityResult](js-apis-inner-ability-abilityResult.md) | 是 | 返回给调用startAbilityForResult 接口调用方的相关信息。 | -| callback | AsyncCallback<void> | 是 | callback形式返回停止结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - bundleName: 'com.extreme.myapplication', - abilityName: 'SecondAbility' - }; - let resultCode = 100; - // 返回给接口调用方AbilityResult信息 - let abilityResult = { - want, - resultCode - }; - - try { - this.context.terminateSelfWithResult(abilityResult, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('terminateSelfWithResult failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('terminateSelfWithResult succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - -## AbilityContext.terminateSelfWithResult - -terminateSelfWithResult(parameter: AbilityResult): Promise<void>; - -停止Ability,配合startAbilityForResult使用,返回给接口调用方AbilityResult信息(promise形式)。 -停止当前的Ability。如果该Ability是通过调用[startAbilityForResult](#abilitycontextstartabilityforresult)接口被拉起的,调用terminateSelfWithResult接口时会将结果返回给调用者,如果该Ability不是通过调用[startAbilityForResult](#abilitycontextstartabilityforresult)接口被拉起的,调用terminateSelfWithResult接口时不会有结果返回给调用者(promise形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| parameter | [AbilityResult](js-apis-inner-ability-abilityResult.md) | 是 | 返回给startAbilityForResult 调用方的信息。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise<void> | promise形式返回停止结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - - -**示例:** - - ```ts - let want = { - bundleName: 'com.extreme.myapplication', - abilityName: 'SecondAbility' - }; - let resultCode = 100; - // 返回给接口调用方AbilityResult信息 - let abilityResult = { - want, - resultCode - }; - - try { - this.context.terminateSelfWithResult(abilityResult) - .then((data) => { - // 执行正常业务 - console.log('terminateSelfWithResult succeed'); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('terminateSelfWithResult failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.connectServiceExtensionAbility - -connectServiceExtensionAbility(want: Want, options: ConnectOptions): number; - -使用AbilityInfo.AbilityType.SERVICE模板将当前Ability连接到一个Ability。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| options | [ConnectOptions](js-apis-inner-ability-connectOptions.md) | 是 | 远端对象实例。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| number | 返回Ability连接的结果code。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let options = { - onConnect(elementName, remote) { console.log('----------- onConnect -----------') }, - onDisconnect(elementName) { console.log('----------- onDisconnect -----------') }, - onFailed(code) { console.log('----------- onFailed -----------') } - } - - let connection = null; - try { - connection = this.context.connectServiceExtensionAbility(want, options); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - -## AbilityContext.connectServiceExtensionAbilityWithAccount - -connectServiceExtensionAbilityWithAccount(want: Want, accountId: number, options: ConnectOptions): number; - -使用AbilityInfo.AbilityType.SERVICE模板和account将当前Ability连接到一个Ability。 - -**需要权限:** ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | -| options | [ConnectOptions](js-apis-inner-ability-connectOptions.md) | 是 | 远端对象实例。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| number | 返回Ability连接的结果code。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - let options = { - onConnect(elementName, remote) { console.log('----------- onConnect -----------') }, - onDisconnect(elementName) { console.log('----------- onDisconnect -----------') }, - onFailed(code) { console.log('----------- onFailed -----------') } - } - - let connection = null; - try { - connection = this.context.connectServiceExtensionAbilityWithAccount(want, accountId, options); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.disconnectServiceExtensionAbility - -disconnectServiceExtensionAbility(connection: number): Promise\; - -断开连接(promise形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| connection | number | 是 | 连接的Ability的数字代码。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise\ | 返回执行结果。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - // connection为connectServiceExtensionAbility中的返回值 - let connection = 1; - - try { - this.context.disconnectServiceExtensionAbility(connection) - .then((data) => { - // 执行正常业务 - console.log('disconnectServiceExtensionAbility succeed'); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('disconnectServiceExtensionAbility failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.disconnectServiceExtensionAbility - -disconnectServiceExtensionAbility(connection: number, callback:AsyncCallback\): void; - -断开连接(callback形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| connection | number | 是 | 连接的Ability的数字代码。 | -| callback | AsyncCallback\ | 是 | 表示指定的回调方法。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - // connection为connectServiceExtensionAbility中的返回值 - let connection = 1; - - try { - this.context.disconnectServiceExtensionAbility(connection, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('disconnectServiceExtensionAbility failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('disconnectServiceExtensionAbility succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.startAbilityByCall - -startAbilityByCall(want: Want): Promise<Caller>; - -启动指定Ability至前台或后台,同时获取其Caller通信接口,调用方可使用Caller与被启动的Ability进行通信。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 传入需要启动的Ability的信息,包含abilityName、moduleName、bundleName、deviceId(可选)、parameters(可选),其中deviceId缺省或为空表示启动本地Ability,parameters缺省或为空表示后台启动Ability。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise<Caller> | 获取要通讯的caller对象。 | - -**示例:** - - 后台启动: - - ```ts - let caller = undefined; - - // 后台启动Ability,不配置parameters - let wantBackground = { - bundleName: 'com.example.myservice', - moduleName: 'entry', - abilityName: 'MainAbility', - deviceId: '' - }; - - try { - this.context.startAbilityByCall(wantBackground) - .then((obj) => { - // 执行正常业务 - caller = obj; - console.log('startAbilityByCall succeed'); - }).catch((error) => { - // 处理业务逻辑错误 - console.log('startAbilityByCall failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - 前台启动: - - ```ts - let caller = undefined; - - // 前台启动Ability,将parameters中的'ohos.aafwk.param.callAbilityToForeground'配置为true - let wantForeground = { - bundleName: 'com.example.myservice', - moduleName: 'entry', - abilityName: 'MainAbility', - deviceId: '', - parameters: { - 'ohos.aafwk.param.callAbilityToForeground': true - } - }; - - try { - this.context.startAbilityByCall(wantForeground) - .then((obj) => { - // 执行正常业务 - caller = obj; - console.log('startAbilityByCall succeed'); - }).catch((error) => { - // 处理业务逻辑错误 - console.log('startAbilityByCall failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.startAbilityWithAccount - -startAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback\): void; - -根据account启动Ability(callback形式)。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | -| callback | AsyncCallback\ | 是 | 启动Ability的回调函数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - - try { - this.context.startAbilityWithAccount(want, accountId, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startAbilityWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startAbilityWithAccount succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - -## AbilityContext.startAbilityWithAccount - -startAbilityWithAccount(want: Want, accountId: number, options: StartOptions, callback: AsyncCallback\): void; - -根据account启动Ability(callback形式)。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。| -| options | [StartOptions](js-apis-app-ability-startOptions.md) | 是 | 启动Ability所携带的参数。 | -| callback | AsyncCallback\ | 是 | 启动Ability的回调函数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - let options = { - windowMode: 0 - }; - - try { - this.context.startAbilityWithAccount(want, accountId, options, (error) => { - if (error.code) { - // 处理业务逻辑错误 - console.log('startAbilityWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - return; - } - // 执行正常业务 - console.log('startAbilityWithAccount succeed'); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - - -## AbilityContext.startAbilityWithAccount - -startAbilityWithAccount(want: Want, accountId: number, options?: StartOptions): Promise\; - -根据account启动Ability(Promise形式)。 - -使用规则: - - 调用方应用位于后台时,使用该接口启动Ability需申请`ohos.permission.START_ABILITIES_FROM_BACKGROUND`权限 - - 目标Ability的visible属性若配置为false,调用方应用需申请`ohos.permission.START_INVISIBLE_ABILITY`权限 - - 组件启动规则详见:[组件启动规则(Stage模型)](../../application-models/component-startup-rules.md) - -**需要权限**: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| want | [Want](js-apis-application-want.md) | 是 | 启动Ability的want信息。 | -| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | -| options | [StartOptions](js-apis-app-ability-startOptions.md) | 否 | 启动Ability所携带的参数。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | If the input parameter is not valid parameter. | -其他ID见[元能力子系统错误码](../errorcodes/errorcode-ability.md) - -**示例:** - - ```ts - let want = { - deviceId: '', - bundleName: 'com.extreme.test', - abilityName: 'MainAbility' - }; - let accountId = 100; - let options = { - windowMode: 0 - }; - - try { - this.context.startAbilityWithAccount(want, accountId, options) - .then((data) => { - // 执行正常业务 - console.log('startAbilityWithAccount succeed'); - }) - .catch((error) => { - // 处理业务逻辑错误 - console.log('startAbilityWithAccount failed, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - }); - } catch (paramError) { - // 处理入参错误异常 - console.log('error.code: ' + JSON.stringify(paramError.code) + - ' error.message: ' + JSON.stringify(paramError.message)); - } - ``` - -## AbilityContext.setMissionLabel - -setMissionLabel(label: string, callback:AsyncCallback<void>): void; - -设置ability在任务中显示的名称(callback形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| label | string | 是 | 显示名称。 | -| callback | AsyncCallback<void> | 是 | 回调函数,返回接口调用是否成功的结果。 | - -**示例:** - - ```ts - this.context.setMissionLabel('test',(result) => { - console.log('setMissionLabel result:' + JSON.stringify(result)); - }); - ``` - - -## AbilityContext.setMissionLabel - -setMissionLabel(label: string): Promise<void>; - -设置ability在任务中显示的名称(promise形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| label | string | 是 | 显示名称。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise<void> | 返回一个Promise,包含接口的结果。 | - -**示例:** - - ```ts - this.context.setMissionLabel('test').then(() => { - console.log('success'); - }).catch((error) => { - console.log('failed:' + JSON.stringify(error)); - }); - ``` -## AbilityContext.setMissionIcon - -setMissionIcon(icon: image.PixelMap, callback:AsyncCallback\): void; - -设置当前ability在任务中显示的图标(callback形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| icon | [image.PixelMap](js-apis-image.md#pixelmap7) | 是 | 在最近的任务中显示的ability图标。 | -| callback | AsyncCallback\ | 是 | 指定的回调函数的结果。 | - -**示例:** - - ```ts - import image from '@ohos.multimedia.image'; - let imagePixelMap; - let color = new ArrayBuffer(0); - let initializationOptions = { - size: { - height: 100, - width: 100 - } - }; - image.createPixelMap(color, initializationOptions) - .then((data) => { - imagePixelMap = data; - }) - .catch((err) => { - console.log('--------- createPixelMap fail, err: ---------', err); - }); - this.context.setMissionIcon(imagePixelMap, (err) => { - console.log('---------- setMissionIcon fail, err: -----------', err); - }) - ``` - - -## AbilityContext.setMissionIcon - -setMissionIcon(icon: image.PixelMap): Promise\; - -设置当前ability在任务中显示的图标(promise形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**系统API**: 此接口为系统接口,三方应用不支持调用。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| icon | [image.PixelMap](js-apis-image.md#pixelmap7) | 是 | 在最近的任务中显示的ability图标。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise<void> | 返回一个Promise,包含接口的结果。 | - -**示例:** - - ```ts - import image from '@ohos.multimedia.image'; - let imagePixelMap; - let color = new ArrayBuffer(0); - let initializationOptions = { - size: { - height: 100, - width: 100 - } - }; - image.createPixelMap(color, initializationOptions) - .then((data) => { - imagePixelMap = data; - }) - .catch((err) => { - console.log('--------- createPixelMap fail, err: ---------', err); - }); - this.context.setMissionIcon(imagePixelMap) - .then(() => { - console.log('-------------- setMissionIcon success -------------'); - }) - .catch((err) => { - console.log('-------------- setMissionIcon fail, err: -------------', err); - }); - ``` -## AbilityContext.restoreWindowStage - -restoreWindowStage(localStorage: LocalStorage) : void; - -恢复ability中的window stage数据。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| localStorage | LocalStorage | 是 | 用于恢复window stage的存储数据。 | - -**示例:** - - ```ts - let storage = new LocalStorage(); - this.context.restoreWindowStage(storage); - ``` - -## AbilityContext.isTerminating - -isTerminating(): boolean; - -查询ability是否在terminating状态。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| bool | true:ability当前处于terminating状态;false:不处于terminating状态。 | - -**示例:** - - ```ts - let isTerminating = this.context.isTerminating(); - console.log('ability state :' + isTerminating); - ``` \ No newline at end of file diff --git a/zh-cn/application-dev/reference/apis/js-apis-app-ability-environmentCallback.md b/zh-cn/application-dev/reference/apis/js-apis-app-ability-environmentCallback.md index 795d7a6e5c392912d5a29f8e68772f323a8db9f7..8be834690c4f77b3ed5bd59a9f4b7f236b073471 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-app-ability-environmentCallback.md +++ b/zh-cn/application-dev/reference/apis/js-apis-app-ability-environmentCallback.md @@ -29,6 +29,20 @@ onConfigurationUpdated(config: Configuration): void; | -------- | -------- | -------- | -------- | | config | [Configuration](js-apis-app-ability-configuration.md) | 是 | 变化后的Configuration对象。 | +## EnvironmentCallback.onMemoryLevel + +onMemoryLevel(level: AbilityConstant.MemoryLevel): void; + +注册系统环境变化的监听后,在系统内存变化时触发回调。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + + | 参数名 | 类型 | 必填 | 说明 | + | -------- | -------- | -------- | -------- | + | level | [AbilityConstant.MemoryLevel](js-apis-app-ability-abilityConstant.md#abilityconstantmemorylevel) | 是 | 回调返回内存微调级别,显示当前内存使用状态。| + **示例:** @@ -45,6 +59,9 @@ export default class MyAbility extends Ability { onConfigurationUpdated(config){ console.log('onConfigurationUpdated config:' + JSON.stringify(config)); }, + onMemoryLevel(level){ + console.log('onMemoryLevel level: ${JSON.stringify(level)}'); + } } // 1.获取applicationContext let applicationContext = globalThis.applicationContext; diff --git a/zh-cn/application-dev/reference/apis/js-apis-application-ability.md b/zh-cn/application-dev/reference/apis/js-apis-application-ability.md deleted file mode 100644 index cc1fc06eafbad04401ab943489cb38e8e5bd67f3..0000000000000000000000000000000000000000 --- a/zh-cn/application-dev/reference/apis/js-apis-application-ability.md +++ /dev/null @@ -1,747 +0,0 @@ -# @ohos.application.Ability (Ability) - -Ability模块提供对Ability生命周期、上下文环境等调用管理的能力,包括Ability创建、销毁、转储客户端信息等。 - -该模块提供以下Ability相关的常用功能: - -- [Caller](#caller):通用组件Caller通信客户端调用接口, 用来向通用组件服务端发送约定数据。 -- [Callee](#callee):通用组件服务端注册和解除客户端caller通知送信的callback接口。 - -> **说明:** -> -> 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 -> 本模块接口仅可在Stage模型下使用。 - -## 导入模块 - -```ts -import Ability from '@ohos.application.Ability'; -``` - -## 属性 - -**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.AbilityCore - -| 名称 | 类型 | 可读 | 可写 | 说明 | -| -------- | -------- | -------- | -------- | -------- | -| context | [UIAbilityContext](js-apis-inner-application-uiAbilityContext.md) | 是 | 否 | 上下文。 | -| launchWant | [Want](js-apis-app-ability-want.md) | 是 | 否 | Ability启动时的参数。 | -| lastRequestWant | [Want](js-apis-app-ability-want.md) | 是 | 否 | Ability最后请求时的参数。| -| callee | [Callee](#callee) | 是 | 否 | 调用Stub(桩)服务对象。| - -## Ability.onCreate - -onCreate(want: Want, param: AbilityConstant.LaunchParam): void; - -Ability创建时回调,执行初始化业务逻辑操作。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | want | [Want](js-apis-app-ability-want.md) | 是 | 当前Ability的Want类型信息,包括ability名称、bundle名称等。 | - | param | AbilityConstant.LaunchParam | 是 | 创建 ability、上次异常退出的原因信息。 | - -**示例:** - - ```ts - class myAbility extends Ability { - onCreate(want, param) { - console.log('onCreate, want:' + want.abilityName); - } - } - ``` - - -## Ability.onWindowStageCreate - -onWindowStageCreate(windowStage: window.WindowStage): void - -当WindowStage创建后调用。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | windowStage | [window.WindowStage](js-apis-window.md#windowstage9) | 是 | WindowStage相关信息。 | - -**示例:** - - ```ts - class myAbility extends Ability { - onWindowStageCreate(windowStage) { - console.log('onWindowStageCreate'); - } - } - ``` - - -## Ability.onWindowStageDestroy - -onWindowStageDestroy(): void - -当WindowStage销毁后调用。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**示例:** - - ```ts - class myAbility extends Ability { - onWindowStageDestroy() { - console.log('onWindowStageDestroy'); - } - } - ``` - - -## Ability.onWindowStageRestore - -onWindowStageRestore(windowStage: window.WindowStage): void - -当迁移多实例ability时,恢复WindowStage后调用。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | windowStage | [window.WindowStage](js-apis-window.md#windowstage9) | 是 | WindowStage相关信息。 | - -**示例:** - - ```ts - class myAbility extends Ability { - onWindowStageRestore(windowStage) { - console.log('onWindowStageRestore'); - } - } - ``` - - -## Ability.onDestroy - -onDestroy(): void; - -Ability生命周期回调,在销毁时回调,执行资源清理等操作。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**示例:** - - ```ts - class myAbility extends Ability { - onDestroy() { - console.log('onDestroy'); - } - } - ``` - - -## Ability.onForeground - -onForeground(): void; - -Ability生命周期回调,当应用从后台转到前台时触发。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**示例:** - - ```ts - class myAbility extends Ability { - onForeground() { - console.log('onForeground'); - } - } - ``` - - -## Ability.onBackground - -onBackground(): void; - -Ability生命周期回调,当应用从前台转到后台时触发。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**示例:** - - ```ts - class myAbility extends Ability { - onBackground() { - console.log('onBackground'); - } - } - ``` - - -## Ability.onContinue - -onContinue(wantParam : {[key: string]: any}): AbilityConstant.OnContinueResult; - -当ability迁移准备迁移时触发,保存数据。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | wantParam | {[key: string]: any} | 是 | want相关参数。 | - -**返回值:** - - | 类型 | 说明 | - | -------- | -------- | - | AbilityConstant.OnContinueResult | 继续的结果。 | - -**示例:** - - ```ts - import AbilityConstant from '@ohos.application.AbilityConstant'; - class myAbility extends Ability { - onContinue(wantParams) { - console.log('onContinue'); - wantParams['myData'] = 'my1234567'; - return AbilityConstant.OnContinueResult.AGREE; - } - } - ``` - - -## Ability.onNewWant - -onNewWant(want: Want, launchParams: AbilityConstant.LaunchParam): void; - -当传入新的Want,ability再次被拉起时会回调执行该方法。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | want | [Want](js-apis-application-want.md) | 是 | Want类型参数,如ability名称,包名等。 | - | launchParams | AbilityConstant.LaunchParam | 是 | Ability启动的原因、上次异常退出的原因信息。 | - -**示例:** - - ```ts - class myAbility extends Ability { - onNewWant(want, launchParams) { - console.log('onNewWant, want:' + want.abilityName); - console.log('onNewWant, launchParams:' + JSON.stringify(launchParams)); - } - } - ``` - -## Ability.onConfigurationUpdated - -onConfigurationUpdated(config: Configuration): void; - -环境变化通知接口,发生全局配置变更时回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | config | [Configuration](js-apis-application-configuration.md) | 是 | 发生全局配置变更时触发回调,当前全局配置包括系统语言、深浅色模式。 | - -**示例:** - - ```ts - class myAbility extends Ability { - onConfigurationUpdated(config) { - console.log('onConfigurationUpdated, language:' + config.language); - } - } - ``` - -## Ability.dump - -dump(params: Array\): Array\; - -转储客户端信息时调用。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | params | Array\ | 是 | 表示命令形式的参数。| - -**示例:** - - ```ts - class myAbility extends Ability { - dump(params) { - console.log('dump, params:' + JSON.stringify(params)); - return ['params'] - } - } - ``` - -## Ability.onMemoryLevel - -onMemoryLevel(level: AbilityConstant.MemoryLevel): void; - -当系统已决定调整内存时调用。例如,当该功能在后台运行时,没有足够的内存来运行尽可能多的后台进程时可以使用。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | level | [AbilityConstant.MemoryLevel](js-apis-application-abilityConstant.md#abilityconstantmemorylevel) | 是 | 回调返回内存微调级别,显示当前内存使用状态。| - -**示例:** - - ```ts - class myAbility extends Ability { - onMemoryLevel(level) { - console.log('onMemoryLevel, level:' + JSON.stringify(level)); - } - } - ``` - -## Ability.onSaveState - -onSaveState(reason: AbilityConstant.StateType, wantParam : {[key: string]: any}): AbilityConstant.OnSaveResult; - -该API配合[appRecovery](js-apis-app-ability-appRecovery.md)使用。在应用故障时,如果使能了自动保存状态,框架将回调onSaveState保存Ability状态。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | reason | [AbilityConstant.StateType](js-apis-app-ability-abilityConstant.md#abilityconstantstatetype) | 是 | 回调保存状态的原因。 | - | wantParam | {[key: string]: any} | 是 | want相关参数。 | - -**返回值:** - - | 类型 | 说明 | - | -------- | -------- | - | AbilityConstant.OnSaveResult | 是否同意保存当前Ability的状态。 | - -**示例:** - - ```ts -import AbilityConstant from '@ohos.application.AbilityConstant'; - -class myAbility extends Ability { - onSaveState(reason, wantParam) { - console.log('onSaveState'); - wantParam['myData'] = 'my1234567'; - return AbilityConstant.OnSaveResult.RECOVERY_AGREE; - } -} - ``` - - - -## Caller - -通用组件Caller通信客户端调用接口, 用来向通用组件服务端发送约定数据。 - -## Caller.call - -call(method: string, data: rpc.Sequenceable): Promise<void>; - -向通用组件服务端发送约定序列化数据。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | method | string | 是 | 约定的服务端注册事件字符串。 | - | data | rpc.Sequenceable | 是 | 由开发者实现的Sequenceable可序列化数据。 | - -**返回值:** - - | 类型 | 说明 | - | -------- | -------- | - | Promise<void> | Promise形式返回应答。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 201 | The application does not have permission to call the interface. | -| 401 | Invalid input parameter. | -| 16200001 | Caller released. The caller has been released. | -| 16200002 | Callee invalid. The callee does not exist. | -| 16000050 | Internal Error. | - -**示例:** - - ```ts - import Ability from '@ohos.application.Ability'; - class MyMessageAble{ // 自定义的Sequenceable数据结构 - name:'' - str:'' - num: 1 - constructor(name, str) { - this.name = name; - this.str = str; - } - marshalling(messageParcel) { - messageParcel.writeInt(this.num); - messageParcel.writeString(this.str); - console.log('MyMessageAble marshalling num[' + this.num + '] str[' + this.str + ']'); - return true; - } - unmarshalling(messageParcel) { - this.num = messageParcel.readInt(); - this.str = messageParcel.readString(); - console.log('MyMessageAble unmarshalling num[' + this.num + '] str[' + this.str + ']'); - return true; - } - }; - let method = 'call_Function'; // 约定的通知消息字符串 - let caller; - export default class MainAbility extends Ability { - onWindowStageCreate(windowStage) { - this.context.startAbilityByCall({ - bundleName: 'com.example.myservice', - abilityName: 'MainAbility', - deviceId: '' - }).then((obj) => { - caller = obj; - let msg = new MyMessageAble('msg', 'world'); // 参考Sequenceable数据定义 - caller.call(method, msg) - .then(() => { - console.log('Caller call() called'); - }) - .catch((callErr) => { - console.log('Caller.call catch error, error.code: ' + JSON.stringify(callErr.code) + - ' error.message: ' + JSON.stringify(callErr.message)); - }); - }).catch((err) => { - console.log('Caller GetCaller error, error.code: ' + JSON.stringify(err.code) + - ' error.message: ' + JSON.stringify(err.message)); - }); - } - } - ``` - - -## Caller.callWithResult - -callWithResult(method: string, data: rpc.Sequenceable): Promise<rpc.MessageParcel>; - -向通用组件服务端发送约定序列化数据, 并将服务端返回的约定序列化数据带回。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | method | string | 是 | 约定的服务端注册事件字符串。 | - | data | rpc.Sequenceable | 是 | 由开发者实现的Sequenceable可序列化数据。 | - -**返回值:** - - | 类型 | 说明 | - | -------- | -------- | - | Promise<rpc.MessageParcel> | Promise形式返回通用组件服务端应答数据。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 201 | The application does not have permission to call the interface. | -| 401 | Invalid input parameter. | -| 16200001 | Caller released. The caller has been released. | -| 16200002 | Callee invalid. The callee does not exist. | -| 16000050 | Internal Error. | - -**示例:** - - ```ts - import Ability from '@ohos.application.Ability'; - class MyMessageAble{ - name:'' - str:'' - num: 1 - constructor(name, str) { - this.name = name; - this.str = str; - } - marshalling(messageParcel) { - messageParcel.writeInt(this.num); - messageParcel.writeString(this.str); - console.log('MyMessageAble marshalling num[' + this.num + '] str[' + this.str + ']'); - return true; - } - unmarshalling(messageParcel) { - this.num = messageParcel.readInt(); - this.str = messageParcel.readString(); - console.log('MyMessageAble unmarshalling num[' + this.num + '] str[' + this.str + ']'); - return true; - } - }; - let method = 'call_Function'; - let caller; - export default class MainAbility extends Ability { - onWindowStageCreate(windowStage) { - this.context.startAbilityByCall({ - bundleName: 'com.example.myservice', - abilityName: 'MainAbility', - deviceId: '' - }).then((obj) => { - caller = obj; - let msg = new MyMessageAble(1, 'world'); - caller.callWithResult(method, msg) - .then((data) => { - console.log('Caller callWithResult() called'); - let retmsg = new MyMessageAble(0, ''); - data.readSequenceable(retmsg); - }) - .catch((callErr) => { - console.log('Caller.callWithResult catch error, error.code: ' + JSON.stringify(callErr.code) + - ' error.message: ' + JSON.stringify(callErr.message)); - }); - }).catch((err) => { - console.log('Caller GetCaller error, error.code: ' + JSON.stringify(err.code) + - ' error.message: ' + JSON.stringify(err.message)); - }); - } - } - ``` - - -## Caller.release - -release(): void; - -主动释放通用组件服务端的通信接口。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | Invalid input parameter. | -| 16200001 | Caller released. The caller has been released. | -| 16200002 | Callee invalid. The callee does not exist. | -| 16000050 | Internal Error. | - -**示例:** - - ```ts - import Ability from '@ohos.application.Ability'; - let caller; - export default class MainAbility extends Ability { - onWindowStageCreate(windowStage) { - this.context.startAbilityByCall({ - bundleName: 'com.example.myservice', - abilityName: 'MainAbility', - deviceId: '' - }).then((obj) => { - caller = obj; - try { - caller.release(); - } catch (releaseErr) { - console.log('Caller.release catch error, error.code: ' + JSON.stringify(releaseErr.code) + - ' error.message: ' + JSON.stringify(releaseErr.message)); - } - }).catch((err) => { - console.log('Caller GetCaller error, error.code: ' + JSON.stringify(err.code) + - ' error.message: ' + JSON.stringify(err.message)); - }); - } - } - ``` - -## Caller.onRelease - - onRelease(callback: OnReleaseCallBack): void; - -注册通用组件服务端Stub(桩)断开监听通知。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | callback | OnReleaseCallBack | 是 | 返回onRelease回调结果。 | - -**示例:** - - ```ts - import Ability from '@ohos.application.Ability'; - let caller; - export default class MainAbility extends Ability { - onWindowStageCreate(windowStage) { - this.context.startAbilityByCall({ - bundleName: 'com.example.myservice', - abilityName: 'MainAbility', - deviceId: '' - }).then((obj) => { - caller = obj; - try { - caller.onRelease((str) => { - console.log(' Caller OnRelease CallBack is called ' + str); - }); - } catch (error) { - console.log('Caller.on catch error, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - } - }).catch((err) => { - console.log('Caller GetCaller error, error.code: ' + JSON.stringify(err.code) + - ' error.message: ' + JSON.stringify(err.message)); - }); - } - } - ``` - - -## Callee - -通用组件服务端注册和解除客户端caller通知送信的callback接口。 - -## Callee.on - -on(method: string, callback: CalleeCallBack): void; - -通用组件服务端注册消息通知callback。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | method | string | 是 | 与客户端约定的通知消息字符串。 | - | callback | CalleeCallBack | 是 | 一个rpc.MessageParcel类型入参的js通知同步回调函数, 回调函数至少要返回一个空的rpc.Sequenceable数据对象, 其他视为函数执行错误。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | Invalid input parameter. | -| 16200004 | Method registered. The method has registered. | -| 16000050 | Internal Error. | - -**示例:** - - ```ts - import Ability from '@ohos.application.Ability'; - class MyMessageAble{ - name:'' - str:'' - num: 1 - constructor(name, str) { - this.name = name; - this.str = str; - } - marshalling(messageParcel) { - messageParcel.writeInt(this.num); - messageParcel.writeString(this.str); - console.log('MyMessageAble marshalling num[' + this.num + '] str[' + this.str + ']'); - return true; - } - unmarshalling(messageParcel) { - this.num = messageParcel.readInt(); - this.str = messageParcel.readString(); - console.log('MyMessageAble unmarshalling num[' + this.num + '] str[' + this.str + ']'); - return true; - } - }; - let method = 'call_Function'; - function funcCallBack(pdata) { - console.log('Callee funcCallBack is called ' + pdata); - let msg = new MyMessageAble('test', ''); - pdata.readSequenceable(msg); - return new MyMessageAble('test1', 'Callee test'); - } - export default class MainAbility extends Ability { - onCreate(want, launchParam) { - console.log('Callee onCreate is called'); - try { - this.callee.on(method, funcCallBack); - } catch (error) { - console.log('Callee.on catch error, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - } - } - } - ``` - -## Callee.off - -off(method: string): void; - -解除通用组件服务端注册消息通知callback。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | method | string | 是 | 已注册的通知事件字符串。 | - -**错误码:** - -| 错误码ID | 错误信息 | -| ------- | -------------------------------- | -| 401 | Invalid input parameter. | -| 16200005 | Method not registered. The method has not registered. | -| 16000050 | Internal Error. | - - -**示例:** - - ```ts - import Ability from '@ohos.application.Ability'; - let method = 'call_Function'; - export default class MainAbility extends Ability { - onCreate(want, launchParam) { - console.log('Callee onCreate is called'); - try { - this.callee.off(method); - } catch (error) { - console.log('Callee.off catch error, error.code: ' + JSON.stringify(error.code) + - ' error.message: ' + JSON.stringify(error.message)); - } - } - } - ``` - -## OnReleaseCallBack - -(msg: string): void; - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -| 名称 | 类型 | 可读 | 可写 | 说明 | -| -------- | -------- | -------- | -------- | -------- | -| (msg: string) | function | 是 | 否 | 调用者注册的侦听器函数接口的原型。 | - -## CalleeCallBack - -(indata: rpc.MessageParcel): rpc.Sequenceable; - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -| 名称 | 类型 | 可读 | 可写 | 说明 | -| -------- | -------- | -------- | -------- | -------- | -| (indata: rpc.MessageParcel) | rpc.Sequenceable | 是 | 否 | 被调用方注册的消息侦听器函数接口的原型。 | \ No newline at end of file diff --git a/zh-cn/application-dev/reference/apis/js-apis-application-abilityLifecycleCallback.md b/zh-cn/application-dev/reference/apis/js-apis-application-abilityLifecycleCallback.md deleted file mode 100644 index 28d011e41aceefb70c7260fe5f08f243c9ce14cc..0000000000000000000000000000000000000000 --- a/zh-cn/application-dev/reference/apis/js-apis-application-abilityLifecycleCallback.md +++ /dev/null @@ -1,214 +0,0 @@ -# @ohos.application.AbilityLifecycleCallback (AbilityLifecycleCallback) - -AbilityLifecycleCallback模块提供应用上下文ApplicationContext的生命周期监听方法的回调类的能力,包括onAbilityCreate、onWindowStageCreate、onWindowStageDestroy等方法。 - -> **说明:** -> -> 本模块首批接口从API version 9 开始支持,从API version 9废弃,替换模块为[@ohos.app.ability.AbilityLifecycleCallback](js-apis-app-ability-abilityLifecycleCallback.md)。后续版本的新增接口,采用上角标单独标记接口的起始版本。 -> 本模块接口仅可在Stage模型下使用。 - - -## 导入模块 - -```ts -import AbilityLifecycleCallback from '@ohos.application.AbilityLifecycleCallback'; -``` - - -## AbilityLifecycleCallback.onAbilityCreate - -onAbilityCreate(ability: Ability): void; - -注册监听应用上下文的生命周期后,在ability创建时触发回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | ability | [Ability](js-apis-application-ability.md#Ability) | 是 | 当前Ability对象 | - - -## AbilityLifecycleCallback.onWindowStageCreate - -onWindowStageCreate(ability: Ability, windowStage: window.WindowStage): void; - -注册监听应用上下文的生命周期后,在windowStage创建时触发回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | ability | [Ability](js-apis-application-ability.md#Ability) | 是 | 当前Ability对象 | - | windowStage | [window.WindowStage](js-apis-window.md#windowstage9) | 是 | 当前WindowStage对象 | - - -## AbilityLifecycleCallback.onWindowStageActive - -onWindowStageActive(ability: Ability, windowStage: window.WindowStage): void; - -注册监听应用上下文的生命周期后,在windowStage获焦时触发回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | ability | [Ability](js-apis-application-ability.md#Ability) | 是 | 当前Ability对象 | - | windowStage | [window.WindowStage](js-apis-window.md#windowstage9) | 是 | 当前WindowStage对象 | - - -## AbilityLifecycleCallback.onWindowStageInactive - -onWindowStageInactive(ability: Ability, windowStage: window.WindowStage): void; - -注册监听应用上下文的生命周期后,在windowStage失焦时触发回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | ability | [Ability](js-apis-application-ability.md#Ability) | 是 | 当前Ability对象 | - | windowStage | [window.WindowStage](js-apis-window.md#windowstage9) | 是 | 当前WindowStage对象 | - - -## AbilityLifecycleCallback.onWindowStageDestroy - -onWindowStageDestroy(ability: Ability, windowStage: window.WindowStage): void; - -注册监听应用上下文的生命周期后,在windowStage销毁时触发回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | ability | [Ability](js-apis-application-ability.md#Ability) | 是 | 当前Ability对象 | - | windowStage | [window.WindowStage](js-apis-window.md#windowstage9) | 是 | 当前WindowStage对象 | - - -## AbilityLifecycleCallback.onAbilityDestroy - -onAbilityDestroy(ability: Ability): void; - -注册监听应用上下文的生命周期后,在ability销毁时触发回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | ability | [Ability](js-apis-application-ability.md#Ability) | 是 | 当前Ability对象 | - - -## AbilityLifecycleCallback.onAbilityForeground - -onAbilityForeground(ability: Ability): void; - -注册监听应用上下文的生命周期后,在ability的状态从后台转到前台时触发回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | ability | [Ability](js-apis-application-ability.md#Ability) | 是 | 当前Ability对象 | - - -## AbilityLifecycleCallback.onAbilityBackground - -onAbilityBackground(ability: Ability): void; - -注册监听应用上下文的生命周期后,在ability的状态从前台转到后台时触发回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | ability | [Ability](js-apis-application-ability.md#Ability) | 是 | 当前Ability对象 | - - -## AbilityLifecycleCallback.onAbilityContinue - -onAbilityContinue(ability: Ability): void; - -注册监听应用上下文的生命周期后,在ability迁移时触发回调。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore - -**参数:** - - | 参数名 | 类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | ability | [Ability](js-apis-application-ability.md#Ability) | 是 | 当前Ability对象 | - -**示例:** - - -```ts -import AbilityStage from '@ohos.application.AbilityStage'; - -let lifecycleid; - -export default class MyAbilityStage extends AbilityStage { - onCreate() { - console.log('MyAbilityStage onCreate') - let AbilityLifecycleCallback = { - onAbilityCreate(ability){ - console.log('AbilityLifecycleCallback onAbilityCreate ability:' + JSON.stringify(ability)); - }, - onWindowStageCreate(ability, windowStage){ - console.log('AbilityLifecycleCallback onWindowStageCreate ability:' + JSON.stringify(ability)); - console.log('AbilityLifecycleCallback onWindowStageCreate windowStage:' + JSON.stringify(windowStage)); - }, - onWindowStageActive(ability, windowStage){ - console.log('AbilityLifecycleCallback onWindowStageActive ability:' + JSON.stringify(ability)); - console.log('AbilityLifecycleCallback onWindowStageActive windowStage:' + JSON.stringify(windowStage)); - }, - onWindowStageInactive(ability, windowStage){ - console.log('AbilityLifecycleCallback onWindowStageInactive ability:' + JSON.stringify(ability)); - console.log('AbilityLifecycleCallback onWindowStageInactive windowStage:' + JSON.stringify(windowStage)); - }, - onWindowStageDestroy(ability, windowStage){ - console.log('AbilityLifecycleCallback onWindowStageDestroy ability:' + JSON.stringify(ability)); - console.log('AbilityLifecycleCallback onWindowStageDestroy windowStage:' + JSON.stringify(windowStage)); - }, - onAbilityDestroy(ability){ - console.log('AbilityLifecycleCallback onAbilityDestroy ability:' + JSON.stringify(ability)); - }, - onAbilityForeground(ability){ - console.log('AbilityLifecycleCallback onAbilityForeground ability:' + JSON.stringify(ability)); - }, - onAbilityBackground(ability){ - console.log('AbilityLifecycleCallback onAbilityBackground ability:' + JSON.stringify(ability)); - }, - onAbilityContinue(ability){ - console.log('AbilityLifecycleCallback onAbilityContinue ability:' + JSON.stringify(ability)); - } - } - // 1.通过context属性获取applicationContext - let applicationContext = this.context.getApplicationContext(); - // 2.通过applicationContext注册监听应用内生命周期 - lifecycleid = applicationContext.registerAbilityLifecycleCallback(AbilityLifecycleCallback); - console.log('registerAbilityLifecycleCallback number: ' + JSON.stringify(lifecycleid)); - } - onDestroy() { - let applicationContext = this.context.getApplicationContext(); - applicationContext.unregisterAbilityLifecycleCallback(lifecycleid, (error, data) => { - console.log('unregisterAbilityLifecycleCallback success, err: ' + JSON.stringify(error)); - }); - } -} -``` - \ No newline at end of file diff --git a/zh-cn/application-dev/reference/apis/js-apis-application-errorManager.md b/zh-cn/application-dev/reference/apis/js-apis-application-errorManager.md deleted file mode 100644 index 6741c39b527d174dc5b4fd480be3d51809b4ce80..0000000000000000000000000000000000000000 --- a/zh-cn/application-dev/reference/apis/js-apis-application-errorManager.md +++ /dev/null @@ -1,100 +0,0 @@ -# @ohos.application.errorManager (ErrorManager) - -ErrorManager模块提供对错误观察器的注册和注销的能力。 - -> **说明:** -> -> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 - -## 导入模块 -```ts -import errorManager from '@ohos.application.errorManager' -``` - -## ErrorManager.registerErrorObserver - -registerErrorObserver(observer: ErrorObserver): number; - -注册错误观测器。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| observer | [ErrorObserver](js-apis-inner-application-errorObserver.md) | 是 | 返回观察者的数字代码。 | - -**示例:** - -```ts -let observer = { - onUnhandledException(errorMsg) { - console.log('onUnhandledException, errorMsg: ', errorMsg); - } -} -errorManager.registerErrorObserver(observer) -``` - -## ErrorManager.unregisterErrorObserver - -unregisterErrorObserver(observerId: number, callback: AsyncCallback\): void; - -注销错误观测器。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| observerId | number | 是 | 返回观察者的数字代码。 | -| callback | AsyncCallback\ | 是 | 表示指定的回调方法。 | - -**示例:** - -```ts -let observerId = 100; - -function unregisterErrorObserverCallback(err) { - if (err) { - console.log('------------ unregisterErrorObserverCallback ------------', err); - } -} -errorManager.unregisterErrorObserver(observerId, unregisterErrorObserverCallback); - -``` - -## ErrorManager.unregisterErrorObserver - -unregisterErrorObserver(observerId: number): Promise\; - -注销错误观测器。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------- | -------- | -------- | -------- | -| observerId | number | 是 | 返回观察者的数字代码。 | - -**返回值:** - -| 类型 | 说明 | -| -------- | -------- | -| Promise\ | 返回执行结果。 | - -**示例:** - -```ts -let observerId = 100; -errorManager.unregisterErrorObserver(observerId) -.then((data) => { - console.log('----------- unregisterErrorObserver success ----------', data); -}) -.catch((err) => { - console.log('----------- unregisterErrorObserver fail ----------', err); -}); - -``` \ No newline at end of file diff --git a/zh-cn/application-dev/reference/apis/js-apis-inner-app-context.md b/zh-cn/application-dev/reference/apis/js-apis-inner-app-context.md index 87ad3a00afdb9d5abec9163e9e55755ac9f53666..e40e0f683a516b4344bdb4b8efc011a5bc51f35d 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-inner-app-context.md +++ b/zh-cn/application-dev/reference/apis/js-apis-inner-app-context.md @@ -1290,14 +1290,4 @@ context.printDrawnCompleted().then((data) => { | ----------- | ---- | -------------- | ---- | ---------- | | requestCode | 只读 | number | 是 | 用户传入的请求代码。 | | permissions | 只读 | Array\ | 是 | 用户传入的权限。 | -| authResults | 只读 | Array\ | 是 | 请求权限的结果。 | - -## AppVersionInfo7+ - -**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core - -| 名称 | 类型 | 可读 | 可写 | 说明 | -| ----------- | ------ | ---- | ---- | ------- | -| appName | string | 是 | 否 | 模块名称。 | -| versionCode | number | 是 | 否 | 模块描述信息。 | -| versionName | string | 是 | 否 | 描述信息ID。 | \ No newline at end of file +| authResults | 只读 | Array\ | 是 | 请求权限的结果。 | \ No newline at end of file diff --git a/zh-cn/application-dev/reference/apis/js-apis-inner-application-abilityMonitor.md b/zh-cn/application-dev/reference/apis/js-apis-inner-application-abilityMonitor.md index 64de807614db6017592851defba085fea411d366..c2e7e727fb2ccf57929bba7e631e2844eec29634 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-inner-application-abilityMonitor.md +++ b/zh-cn/application-dev/reference/apis/js-apis-inner-application-abilityMonitor.md @@ -19,6 +19,7 @@ Ability监听器 | 名称 | 类型 | 可读 | 可写 | 说明 | | ------------------------------------------------------------ | -------- | ---- | ---- | ------------------------------------------------------------ | | abilityName | string | 是 | 是 | 当前AbilityMonitor绑定的ability名称 | +| moduleName? | string | 是 | 是 | 当前AbilityMonitor绑定的模块名称 | | onAbilityCreate?:(data: [UIAbility](js-apis-app-ability-uiAbility.md)) | function | 是 | 是 | ability被启动初始化时的回调函数
不设置该属性则不能收到该生命周期回调 | | onAbilityForeground?:(data: [UIAbility](js-apis-app-ability-uiAbility.md)) | function | 是 | 是 | ability状态变成前台时的回调函数
不设置该属性则不能收到该生命周期回调 | | onAbilityBackground?:(data: [UIAbility](js-apis-app-ability-uiAbility.md)) | function | 是 | 是 | ability状态变成后台时的回调函数
不设置该属性则不能收到该生命周期回调 | @@ -38,6 +39,7 @@ function onAbilityCreateCallback(data) { let monitor = { abilityName: 'abilityname', + moduleName: "moduleName", onAbilityCreate: onAbilityCreateCallback }; diff --git a/zh-cn/application-dev/reference/apis/js-apis-inner-application-applicationContext.md b/zh-cn/application-dev/reference/apis/js-apis-inner-application-applicationContext.md index 8aa9decb03d6ff26d7ccfaf3ae46b4947ed4323d..4a9617e5fdbfa41ff4a531845db95b7b6b51ac37 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-inner-application-applicationContext.md +++ b/zh-cn/application-dev/reference/apis/js-apis-inner-application-applicationContext.md @@ -265,9 +265,9 @@ export default class MyAbility extends Ability { } ``` -## ApplicationContext.getProcessRunningInformation9+ +## ApplicationContext.getRunningProcessInformation9+ -getProcessRunningInformation(): Promise\>; +getRunningProcessInformation(): Promise\>; 获取有关运行进程的信息。 @@ -281,22 +281,22 @@ getProcessRunningInformation(): Promise\>; | 类型 | 说明 | | -------- | -------- | -| Promise\> | 以Promise方式返回接口运行结果及有关运行进程的信息,可进行错误处理或其他自定义处理。 | +| Promise\> | 以Promise方式返回接口运行结果及有关运行进程的信息,可进行错误处理或其他自定义处理。 | **示例:** ```ts let applicationContext = this.context.getApplicationContext(); -applicationContext.getProcessRunningInformation().then((data) => { +applicationContext.getRunningProcessInformation().then((data) => { console.log('The process running information is:' + JSON.stringify(data)); }).catch((error) => { console.log('error:' + JSON.stringify(error)); }); ``` -## ApplicationContext.getProcessRunningInformation9+ +## ApplicationContext.getRunningProcessInformation9+ -getProcessRunningInformation(callback: AsyncCallback\>): void; +getRunningProcessInformation(callback: AsyncCallback\>): void; 获取有关运行进程的信息。 @@ -310,15 +310,15 @@ getProcessRunningInformation(callback: AsyncCallback\> | 以回调方式返回接口运行结果及有关运行进程的信息,可进行错误处理或其他自定义处理。 | +|AsyncCallback\> | 以回调方式返回接口运行结果及有关运行进程的信息,可进行错误处理或其他自定义处理。 | **示例:** ```ts let applicationContext = this.context.getApplicationContext(); -applicationContext.getProcessRunningInformation((err, data) => { +applicationContext.getRunningProcessInformation((err, data) => { if (err.code !== 0) { - console.error('getProcessRunningInformation faile, err: ' + JSON.stringify(err)); + console.error('getRunningProcessInformation faile, err: ' + JSON.stringify(err)); } else { console.log('The process running information is:' + JSON.stringify(data)); } diff --git a/zh-cn/application-dev/reference/apis/js-apis-inner-application-context.md b/zh-cn/application-dev/reference/apis/js-apis-inner-application-context.md index d54bec3196fd309d2a5829f8a51dc8f1e0a5d107..3fdc30965dff7a100dc98a9a188a49738d9349e7 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-inner-application-context.md +++ b/zh-cn/application-dev/reference/apis/js-apis-inner-application-context.md @@ -78,6 +78,8 @@ createModuleContext(moduleName: string): Context; let moduleContext = this.context.createModuleContext('entry'); ``` +## Context.createModuleContext + createModuleContext(bundleName: string, moduleName: string): Context; 根据包名和模块名创建上下文Context。