ExtensionContext

ExtensionContext provides the context environment for an ExtensionAbility. It inherits from Context.

This module provides APIs for accessing resources of a specific ExtensionAbility.

NOTE

  • The initial APIs of this module are supported since API version 9. 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 { common } from '@kit.AbilityKit';

Attributes

Atomic service API: This API can be used in atomic services since API version 11.

System capability: SystemCapability.Ability.AbilityRuntime.Core

Name Type Read-Only Optional Description
currentHapModuleInfo HapModuleInfo No No Information about the HAP file.
config Configuration No No Module configuration information.
extensionAbilityInfo ExtensionAbilityInfo No No ExtensionAbility information.

When to Use

ExtensionContext provides information about an ExtensionAbility, module, and HAP file. You can use the information based on service requirements.

Example

Obtain the context of a FormExtensionAbility and query information such as its HAP file.

import { FormExtensionAbility, formBindingData } from '@kit.FormKit';
import { Want } from '@kit.AbilityKit';

export default class MyFormExtensionAbility extends FormExtensionAbility {
  onAddForm(want: Want) {
    console.info(`FormExtensionAbility onAddForm, want: ${want.abilityName}`);
    let extensionContext = this.context;
    let hapInfo = extensionContext.currentHapModuleInfo;
    console.info(`HAP name is: ${hapInfo.name}`);
    let dataObj1: Record<string, string> = {
      'temperature': '11c',
      'time': '11:00'
    };
    let obj1: formBindingData.FormBindingData = formBindingData.createFormBindingData(dataObj1);
    return obj1;
  }
};