HarmonyOS API:Stage模型能力的接口

joytrian
发布于 2023-3-31 17:45
浏览
0收藏

版本:v3.1 Beta

@ohos.app.ability.StartOptions (StartOptions)

更新时间: 2023-02-17 09:19


StartOptions模块对系统的基本通信组件进行查询和设置的能力。


说明

本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。


本模块接口仅可在Stage模型下使用。

导入模块

import StartOptions from '@ohos.app.ability.StartOptions';

属性

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

名称

类型

必填

说明

​windowMode​

number

窗口模式。

displayId

number

显示ID。

@ohos.app.form.FormExtensionAbility (FormExtensionAbility)

更新时间: 2023-03-03 17:21


FormExtensionAbility模块提供了卡片扩展相关接口。


说明

本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。


本模块接口仅可在Stage模型下使用。

导入模块

import FormExtensionAbility from '@ohos.app.form.FormExtensionAbility';

属性

系统能力:SystemCapability.Ability.Form

名称

类型

可读

可写

说明

context

​FormExtensionContext​

FormExtensionAbility的上下文环境,继承自ExtensionContext。

onAddForm

onAddForm(want: Want): formBindingData.FormBindingData

卡片提供方接收创建卡片的通知接口。

系统能力:SystemCapability.Ability.Form

参数:

参数名

类型

必填

说明

want

​Want​

当前ExtensionAbility相关的Want类型信息,包括卡片ID、卡片名称、卡片样式等。这些卡片信息必须作为持久数据进行管理,以便后续更新和删除卡片。

返回值:

类型

说明

​formBindingData.FormBindingData​

formBindingData.FormBindingData对象,卡片要显示的数据。

示例:

import formBindingData from '@ohos.app.form.formBindingData';
import FormExtensionAbility from '@ohos.app.form.FormExtensionAbility';
export default class MyFormExtensionAbility extends FormExtensionAbility {
  onAddForm(want) {
    console.log('FormExtensionAbility onAddForm, want:' + want.abilityName);
    let dataObj1 = {
      temperature:"11c",
      "time":"11:00"
    };
    let obj1 = formBindingData.createFormBindingData(dataObj1);
    return obj1;
  }
}

onCastToNormalForm

onCastToNormalForm(formId: string): void

卡片提供方接收临时卡片转常态卡片的通知接口。

系统能力:SystemCapability.Ability.Form

参数:

参数名

类型

必填

说明

formId

string

请求转换为常态的卡片标识。

示例:

export default class MyFormExtensionAbility extends FormExtensionAbility {
  onCastToNormalForm(formId) {
    console.log('FormExtensionAbility onCastToNormalForm, formId:' + formId);
  }
}

onUpdateForm

onUpdateForm(formId: string): void

卡片提供方接收更新卡片的通知接口。获取最新数据后调用formProvider的​​updateForm​​接口刷新卡片数据。

系统能力:SystemCapability.Ability.Form

参数:

参数名

类型

必填

说明

formId

string

请求更新的卡片ID。

示例:

import FormExtensionAbility from '@ohos.app.form.FormExtensionAbility';
import formBindingData from '@ohos.app.form.formBindingData';
import formProvider from '@ohos.app.form.formProvider';

export default class MyFormExtensionAbility extends FormExtensionAbility {
    onUpdateForm(formId) {
        console.log('FormExtensionAbility onUpdateForm, formId:' + formId);
        let obj2 = formBindingData.createFormBindingData({
            temperature: "22c",
            time: "22:00"
        });
        formProvider.updateForm(formId, obj2).then((data) => {
            console.log('FormExtensionAbility context updateForm, data:' + data);
        }).catch((error) => {
            console.error('Operation updateForm failed. Cause: ' + error);
        });
    }
};

onChangeFormVisibility

onChangeFormVisibility(newStatus: { [key: string]: number }): void

卡片提供方接收修改可见性的通知接口。

系统能力:SystemCapability.Ability.Form

参数:

参数名

类型

必填

说明

newStatus

{ [key: string]: number }

请求修改的卡片标识和可见状态。

示例:

import FormExtensionAbility from '@ohos.app.form.FormExtensionAbility';
import formBindingData from '@ohos.app.form.formBindingData'
import formProvider from '@ohos.app.form.formProvider';

export default class MyFormExtensionAbility extends FormExtensionAbility {
    onChangeFormVisibility(newStatus) {
        console.log('FormExtensionAbility onChangeFormVisibility, newStatus:' + newStatus);
        let obj2 = formBindingData.createFormBindingData({
            temperature: "22c",
            time: "22:00"
        });

        for (let key in newStatus) {
            console.log('FormExtensionAbility onChangeFormVisibility, key:' + key + ", value=" + newStatus[key]);
            formProvider.updateForm(key, obj2).then((data) => {
                console.log('FormExtensionAbility context updateForm, data:' + data);
            }).catch((error) => {
                console.error('Operation updateForm failed. Cause: ' + error);
            });
        }
    }
};

onFormEvent

onFormEvent(formId: string, message: string): void

卡片提供方接收处理卡片事件的通知接口。

系统能力:SystemCapability.Ability.Form

参数:

参数名

类型

必填

说明

formId

string

请求触发事件的卡片标识。

message

string

事件消息。

示例:

export default class MyFormExtension extends FormExtensionAbility {
  onFormEvent(formId, message) {
    console.log('FormExtensionAbility onFormEvent, formId:' + formId + ", message:" + message);
  }
}

onRemoveForm

onRemoveForm(formId: string): void

卡片提供方接收销毁卡片的通知接口。

系统能力:SystemCapability.Ability.Form

参数:

参数名

类型

必填

说明

formId

string

请求销毁的卡片标识。

示例:

export default class MyFormExtensionAbility extends FormExtensionAbility {
  onRemoveForm(formId) {
    console.log('FormExtensionAbility onRemoveForm, formId:' + formId);
  }
}

onConfigurationUpdate

onConfigurationUpdate(newConfig: Configuration): void;

当系统配置更新时调用。

系统能力:SystemCapability.Ability.Form

参数:

参数名

类型

必填

说明

newConfig

​Configuration​

表示需要更新的配置信息。

示例:

class MyFormExtensionAbility extends FormExtensionAbility {
  onConfigurationUpdate(config) {
    console.log('onConfigurationUpdate, config:' + JSON.stringify(config));
  }
}

onAcquireFormState

onAcquireFormState?(want: Want): formInfo.FormState;

卡片提供方接收查询卡片状态通知接口。默认返回卡片初始状态。

系统能力:SystemCapability.Ability.Form

参数:

参数名

类型

必填

说明

want

​Want​

want表示获取卡片状态的描述。描述包括包名称、能力名称、模块名称、卡片名和卡片维度。

示例:

import formInfo from '@ohos.app.form.formInfo';
class MyFormExtensionAbility extends FormExtensionAbility {
  onAcquireFormState(want) {
    console.log('FormExtensionAbility onAcquireFormState, want:' + want);
    return formInfo.FormState.UNKNOWN;
  }
}


文章转载自:​​https://developer.harmonyos.com/cn/docs/documentation/doc-references-V3/js-apis-app-form-formextensionability-0000001478181537-V3?catalogVersion=V3#ZH-CN_TOPIC_0000001478181537__导入模块​

已于2023-3-31 17:45:40修改
收藏
回复
举报
回复