harmony 鸿蒙@ohos.application.ServiceExtensionAbility (ServiceExtensionAbility)

2022-12-22 浏览 (652)

@ohos.application.ServiceExtensionAbility (ServiceExtensionAbility)

The ServiceExtensionAbility module provides APIs for Service Extension abilities.

NOTE

The APIs of this module are supported since API version 9 and are deprecated in versions later than API version 9. You are advised to use @ohos.app.ability.ServiceExtensionAbility instead.

Newly added APIs will be marked with a superscript to indicate their earliest API version.

The APIs of this module can be used only in the stage model.

Modules to Import

import ServiceExtensionAbility from '@ohos.application.ServiceExtensionAbility';

Required Permissions

None.

Attributes

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API and cannot be called by third-party applications.

NameTypeReadableWritableDescription
contextServiceExtensionContextYesNoService Extension context, which is inherited from ExtensionContext.

ServiceExtensionAbility.onCreate

onCreate(want: Want): void;

Called when a Service Extension ability is created to initialize the service logic.

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API and cannot be called by third-party applications.

Parameters

NameTypeMandatoryDescription
wantWantYesWant information related to this Service Extension ability, including the ability name and bundle name.

Example

class ServiceExt extends ServiceExtension {
  onCreate(want) {
    console.log('onCreate, want:' + want.abilityName);
  }
}

ServiceExtensionAbility.onDestroy

onDestroy(): void;

Called when this Service Extension ability is destroyed to clear resources.

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API and cannot be called by third-party applications.

Example

class ServiceExt extends ServiceExtension {
  onDestroy() {
    console.log('onDestroy');
  }
}

ServiceExtensionAbility.onRequest

onRequest(want: Want, startId: number): void;

Called after onCreate is invoked when a Service Extension ability is started by calling startAbility. The value of startId is incremented for each ability that is started.

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API and cannot be called by third-party applications.

Parameters

NameTypeMandatoryDescription
wantWantYesWant information related to this Service Extension ability, including the ability name and bundle name.
startIdnumberYesNumber of ability start times. The initial value is 1, and the value is automatically incremented for each ability started.

Example

class ServiceExt extends ServiceExtension {
  onRequest(want, startId) {
    console.log('onRequest, want:' + want.abilityName);
  }
}

ServiceExtensionAbility.onConnect

onConnect(want: Want): rpc.RemoteObject;

Called after onCreate is invoked when a Service Extension ability is started by calling connectAbility. A RemoteObject object is returned for communication with the client.

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API and cannot be called by third-party applications.

Parameters

NameTypeMandatoryDescription
wantWantYesWant information related to this Service Extension ability, including the ability name and bundle name.

Return value

TypeDescription
rpc.RemoteObjectA RemoteObject object used for communication with the client.

Example

import rpc from '@ohos.rpc'
class StubTest extends rpc.RemoteObject{
    constructor(des) {
        super(des);
    }
    onConnect(code, data, reply, option) {
    }
}
class ServiceExt extends ServiceExtension {
  onConnect(want) {
    console.log('onConnect , want:' + want.abilityName);
    return new StubTest("test");
  }
}

ServiceExtensionAbility.onDisconnect

onDisconnect(want: Want): void;

Called when this Service Extension ability is disconnected.

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API and cannot be called by third-party applications.

Parameters

NameTypeMandatoryDescription
wantWantYesWant information related to this Service Extension ability, including the ability name and bundle name.

Example

class ServiceExt extends ServiceExtension {
  onDisconnect(want) {
    console.log('onDisconnect, want:' + want.abilityName);
  }
}

ServiceExtensionAbility.onReconnect

onReconnect(want: Want): void;

Called when this Service Extension ability is reconnected.

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API and cannot be called by third-party applications.

Parameters

NameTypeMandatoryDescription
wantWantYesWant information related to this Service Extension ability, including the ability name and bundle name.

Example

class ServiceExt extends ServiceExtension {
  onReconnect(want) {
    console.log('onReconnect, want:' + want.abilityName);
  }
}

ServiceExtensionAbility.onConfigurationUpdated

onConfigurationUpdated(config: Configuration): void;

Called when the configuration of this Service Extension ability is updated.

System capability: SystemCapability.Ability.AbilityRuntime.Core

System API: This is a system API and cannot be called by third-party applications.

Parameters

NameTypeMandatoryDescription
configConfigurationYesNew configuration.

Example

class ServiceExt extends ServiceExtension {
    onConfigurationUpdated(config) {
        console.log('onConfigurationUpdated, config:' + JSON.stringify(config));
    }
}

ServiceExtensionAbility.dump

dump(params: Array<string>): Array<string>;

Dumps the client information.

System capability: SystemCapability.Ability.AbilityRuntime.AbilityCore

System API: This is a system API and cannot be called by third-party applications.

Parameters

NameTypeMandatoryDescription
paramsArray<string>YesParameters in the form of a command.

Example

class ServiceExt extends ServiceExtension {
    dump(params) {
        console.log('dump, params:' + JSON.stringify(params));
        return ["params"]
    }
}

你可能感兴趣的鸿蒙文章

harmony 鸿蒙APIs

harmony 鸿蒙System Common Events

harmony 鸿蒙System Common Events

harmony 鸿蒙API Reference Document Description

harmony 鸿蒙BundleStatusCallback

harmony 鸿蒙@ohos.bundle.innerBundleManager (innerBundleManager)

harmony 鸿蒙@ohos.distributedBundle (Distributed Bundle Management)

harmony 鸿蒙@ohos.bundle (Bundle)

harmony 鸿蒙@ohos.enterprise.EnterpriseAdminExtensionAbility (EnterpriseAdminExtensionAbility)

harmony 鸿蒙@ohos.WorkSchedulerExtensionAbility (Work Scheduler Callbacks)

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/0be9b1556e684752a0b719d078202130