0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā)接口Ability框架:【@ohos.application.FormExtension (FormExtension)】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-07 09:43 ? 次閱讀

FormExtension

FormExtension模塊提供了FormExtension卡片擴(kuò)展相關(guān)接口

說明:

本模塊首批接口從API version 9開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。
本模塊接口僅可在Stage模型下使用。

導(dǎo)入模塊

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

權(quán)限

屬性

系統(tǒng)能力 :SystemCapability.Ability.Form

名稱參數(shù)類型可讀可寫說明
context[FormExtensionContext]FormExtension的上下文環(huán)境,繼承自ExtensionContext。

鴻蒙開發(fā)指導(dǎo)文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

onCreate

onCreate(want: Want): formBindingData.FormBindingData

卡片提供方接收創(chuàng)建卡片的通知接口。

系統(tǒng)能力 :SystemCapability.Ability.Form

參數(shù):

參數(shù)名類型必填說明
want[Want]當(dāng)前Extension相關(guān)的Want類型信息,包括卡片ID、卡片名稱、卡片樣式等。這些卡片信息必須作為持久數(shù)據(jù)進(jìn)行管理,以便后續(xù)更新和刪除卡片。

返回值:

類型說明
[formBindingData.FormBindingData]一個(gè)formBindingData.FormBindingData對(duì)象,卡片要顯示的數(shù)據(jù)。

示例:

import formBindingData from '@ohos.application.formBindingData'
export default class MyFormExtension extends FormExtension {
    onCreate(want) {
        console.log('FormExtension onCreate, want:' + want.abilityName);
        let dataObj1 = {
            temperature:"11c",
            "time":"11:00"
        };
        let obj1 = formBindingData.createFormBindingData(dataObj1);
        return obj1;
    }
}

FormExtension.onCastToNormal

onCastToNormal(formId: string): void

卡片提供方接收臨時(shí)卡片轉(zhuǎn)常態(tài)卡片的通知接口。

系統(tǒng)能力 :SystemCapability.Ability.Form

參數(shù):

參數(shù)名類型必填說明
formIdstring請(qǐng)求轉(zhuǎn)換為常態(tài)的卡片ID。

示例:

export default class MyFormExtension extends FormExtension {
    onCastToNormal(formId) {
        console.log('FormExtension onCastToNormal, formId:' + formId);
    }
}

FormExtension.onUpdate

onUpdate(formId: string): void

卡片提供方接收更新卡片的通知接口。獲取最新數(shù)據(jù)后調(diào)用[FormExtensionContext]的updateForm接口刷新卡片數(shù)據(jù)。

系統(tǒng)能力 :SystemCapability.Ability.Form

參數(shù):

參數(shù)名類型必填說明
formIdstring請(qǐng)求更新的卡片ID。

示例:

import formBindingData from '@ohos.application.formBindingData'
export default class MyFormExtension extends FormExtension {
    onUpdate(formId) {
        console.log('FormExtension onUpdate, formId:' + formId);
        let obj2 = formBindingData.createFormBindingData({temperature:"22c", time:"22:00"});
        this.context.updateForm(formId, obj2)
            .then((data)= >{
                console.log('FormExtension context updateForm, data:' + data);
            }).catch((error) = > {
            console.error('Operation updateForm failed. Cause: ' + error);});
    }
}

FormExtension.onVisibilityChange

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

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

系統(tǒng)能力 :SystemCapability.Ability.Form

參數(shù):

參數(shù)名類型必填說明
newStatus{ [key: string]: number }請(qǐng)求修改的卡片ID和可見狀態(tài)。

示例:

import formBindingData from '@ohos.application.formBindingData'
export default class MyFormExtension extends FormExtension {
    onVisibilityChange(newStatus) {
        console.log('FormExtension onVisibilityChange, newStatus:' + newStatus);
        let obj2 = formBindingData.createFormBindingData({temperature:"22c", time:"22:00"});

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

FormExtension.onEvent

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

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

系統(tǒng)能力 :SystemCapability.Ability.Form

參數(shù):

參數(shù)名類型必填說明
formIdstring請(qǐng)求觸發(fā)事件的卡片ID。
messagestring事件消息。

示例:

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

FormExtension.onDestroy

onDestroy(formId: string): void

卡片提供方接收銷毀卡片的通知接口。

系統(tǒng)能力 :SystemCapability.Ability.Form

參數(shù):

參數(shù)名類型必填說明
formIdstring請(qǐng)求銷毀的卡片ID。

示例:

export default class MyFormExtension extends FormExtension {
    onDestroy(formId) {
        console.log('FormExtension onDestroy, formId:' + formId);
    }
}

FormExtension.onConfigurationUpdated

onConfigurationUpdated(config: Configuration): void;

當(dāng)系統(tǒng)配置更新時(shí)調(diào)用。

系統(tǒng)能力 :SystemCapability.Ability.Form

參數(shù):

參數(shù)名類型必填說明
config[Configuration]表示需要更新的配置信息。

示例:

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

FormExtension.onAcquireFormState

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

卡片提供方接收查詢卡片狀態(tài)通知接口。默認(rèn)返回卡片初始狀態(tài)。

系統(tǒng)能力 :SystemCapability.Ability.Form

參數(shù):

參數(shù)名類型必填說明
want[Want]want表示獲取卡片狀態(tài)的描述。描述包括包名稱、能力名稱、模塊名稱、卡片名和卡片維度。

搜狗高速瀏覽器截圖20240326151450.png
示例:

import formInfo from '@ohos.application.formInfo'
class MyFormExtension extends FormExtension {
    onAcquireFormState(want) {
        console.log('FormExtension onAcquireFormState, want:' + want);
        return formInfo.FormState.UNKNOWN;
    }
}

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8360

    瀏覽量

    150535
  • 框架
    +關(guān)注

    關(guān)注

    0

    文章

    397

    瀏覽量

    17361
  • 鴻蒙
    +關(guān)注

    關(guān)注

    57

    文章

    2291

    瀏覽量

    42632
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    鴻蒙開發(fā)接口Ability框架:【@ohos.application.Ability (Ability)】

    Ability模塊提供對(duì)Ability生命周期、上下文環(huán)境等調(diào)用管理的能力,包括Ability創(chuàng)建、銷毀、轉(zhuǎn)儲(chǔ)客戶端信息等。
    的頭像 發(fā)表于 04-30 17:42 ?2146次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@<b class='flag-5'>ohos.application.Ability</b> (<b class='flag-5'>Ability</b>)】

    鴻蒙開發(fā)接口Ability框架:【@ohos.ability.featureAbility (FeatureAbility模塊)】

    FeatureAbility模塊提供帶有UI設(shè)計(jì)與用戶交互的能力,包括啟動(dòng)新的ability、獲取dataAbilityHelper、設(shè)置此Page Ability、獲取當(dāng)前Ability對(duì)應(yīng)的窗口,連接服務(wù)等。
    的頭像 發(fā)表于 05-06 16:31 ?868次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@<b class='flag-5'>ohos.ability</b>.featureAbility (FeatureAbility模塊)】

    鴻蒙開發(fā)接口Ability框架:【@ohos.application.missionManager (missionManager)】

    表示Ability對(duì)應(yīng)任務(wù)信息的枚舉。
    的頭像 發(fā)表于 05-08 09:19 ?822次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@<b class='flag-5'>ohos.application</b>.missionManager (missionManager)】

    鴻蒙開發(fā)接口Ability框架:【@ohos.ability.particleAbility (particleAbility模塊)】

    particleAbility模塊提供了Service類型Ability的能力,包括啟動(dòng)、停止指定的particleAbility,獲取dataAbilityHelper,連接、斷開當(dāng)前Ability與指定ServiceAbility等。
    的頭像 發(fā)表于 05-09 10:21 ?629次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@<b class='flag-5'>ohos.ability</b>.particleAbility (particleAbility模塊)】

    鴻蒙開發(fā)接口Ability框架:【 (Context模塊)】

    Context模塊提供了abilityapplication的上下文的能力,包括允許訪問特定于應(yīng)用程序的資源、請(qǐng)求和驗(yàn)證權(quán)限等。
    的頭像 發(fā)表于 05-13 16:04 ?609次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【 (Context模塊)】

    鴻蒙開發(fā)接口Ability框架:【(AbilityContext)】

    AbilityContext是Ability的上下文環(huán)境,繼承自Context。
    的頭像 發(fā)表于 05-13 09:26 ?890次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【(AbilityContext)】

    鴻蒙開發(fā)接口Ability框架:【(AbilityDelegator)】

    AbilityDelegator提供添加用于監(jiān)視指定能力的生命周期狀態(tài)更改的AbilityMonitor對(duì)象的能力,包括對(duì)AbilityMonitor實(shí)例的添加、刪除、等待ability到達(dá)
    的頭像 發(fā)表于 05-13 17:58 ?892次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【(AbilityDelegator)】

    鴻蒙開發(fā)接口Ability框架:【AbilityRunningInfo】

    AbilityRunningInfo模塊提供對(duì)Ability運(yùn)行的相關(guān)信息和狀態(tài)進(jìn)行設(shè)置和查詢的能力。
    的頭像 發(fā)表于 05-14 16:02 ?714次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【AbilityRunningInfo】

    鴻蒙開發(fā)接口Ability框架:【AbilityDelegator】

    AbilityDelegator提供添加用于監(jiān)視指定能力的生命周期狀態(tài)更改的AbilityMonitor對(duì)象的能力,包括對(duì)AbilityMonitor實(shí)例的添加、刪除、等待ability到達(dá)
    的頭像 發(fā)表于 05-16 16:48 ?867次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【AbilityDelegator】

    鴻蒙應(yīng)用模型開發(fā)-更新SDK后報(bào)錯(cuò)解決

    變更,可以嘗試替換為新的模塊名(常用接口如下): 原有接口接口 @ohos.application.Ability @ohos.app.abil
    發(fā)表于 02-18 17:17

    鴻蒙之@ohos.app.ability.appRecovery (appRecovery)

    Ability的應(yīng)用恢復(fù)。 導(dǎo)入模塊 import appRecovery from ‘@ohos.app.ability.appRecovery’; appRecovery.RestartFlag
    的頭像 發(fā)表于 02-20 16:28 ?391次閱讀

    鴻蒙開發(fā)接口Ability框架:【@ohos.application.AbilityConstant (AbilityConstant)】

    AbilityConstant提供啟動(dòng)參數(shù)的接口的能力,包括設(shè)置初次開始原因的類型、上次退出原因的類型、繼續(xù)結(jié)果的類型。
    的頭像 發(fā)表于 04-30 22:10 ?346次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@<b class='flag-5'>ohos.application</b>.AbilityConstant (AbilityConstant)】

    鴻蒙開發(fā)接口Ability框架:【@ohos.application.formProvider (FormProvider)】

    FormProvider模塊提供了卡片提供方相關(guān)接口的能力,包括更新卡片,設(shè)置卡片更新時(shí)間,獲取卡片信息,請(qǐng)求發(fā)布卡片等。
    的頭像 發(fā)表于 05-09 14:39 ?383次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@<b class='flag-5'>ohos.application</b>.formProvider (FormProvider)】

    鴻蒙開發(fā)接口Ability框架:【AbilityRunningInfo】

    AbilityRunningInfo模塊提供對(duì)Ability運(yùn)行的相關(guān)信息和狀態(tài)進(jìn)行設(shè)置和查詢的能力。
    的頭像 發(fā)表于 05-17 17:12 ?272次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【AbilityRunningInfo】

    鴻蒙Ability Kit(程序框架服務(wù))【Ability與ServiceExtensionAbility通信】

    本示例展示通過[IDL的方式]和?[@ohos.rpc]?等接口實(shí)現(xiàn)了Ability與ServiceExtensionAbility之間的通信。
    的頭像 發(fā)表于 06-05 09:28 ?402次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> Kit(程序<b class='flag-5'>框架</b>服務(wù))【<b class='flag-5'>Ability</b>與ServiceExtensionAbility通信】