HarmonyOS鸿蒙Next中如何在应用内就可以添加服务卡片

HarmonyOS鸿蒙Next中如何在应用内就可以添加服务卡片 不用再长按图标选择图片,直接在应用中点击直接就添加卡片

4 回复

你看看这个API:

[@ohos.app.form.formProvider (formProvider)-ArkTS API-Form Kit(卡片开发服务)](https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-app-form-formprovider#formprovideropenformmanager18)

更多关于HarmonyOS鸿蒙Next中如何在应用内就可以添加服务卡片的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


学习了

在HarmonyOS Next中,应用内添加服务卡片主要通过Stage模型实现。开发者需在module.json5文件中配置卡片信息,包括卡片名称、尺寸和布局。卡片提供方需实现FormExtensionAbility生命周期回调,如onCreateForm和onCastToNormalForm。使用FormProvider的setFormNextRefreshTime方法可设置卡片刷新时间。卡片UI通过ArkTS声明式开发,支持动态数据绑定。

在HarmonyOS Next中,应用内直接添加服务卡片可以通过ArkTS的FormExtensionAbilityformProvider能力实现。核心步骤如下:

  1. 配置卡片信息:在module.json5中声明FormExtensionAbility,并定义卡片的基本属性(如名称、尺寸、布局文件)。

  2. 实现卡片逻辑:在FormExtensionAbility中覆写onAddForm等方法,处理卡片的创建和生命周期。

  3. 应用内触发添加:在应用页面中,调用formProvideracquireForm接口,传入卡片ID和绑定数据,即可直接创建并添加卡片到桌面,无需长按图标。

示例代码片段(ArkTS):

import { formProvider } from '@kit.FormKit';

// 在应用内按钮点击事件中调用
async function addCard() {
  let formId = 'your_card_id'; // 卡片ID需与module.json5中配置一致
  let cardData = {}; // 可传递初始数据
  try {
    await formProvider.acquireForm(formId, cardData);
    // 添加成功
  } catch (error) {
    // 处理异常
  }
}

注意:需确保应用已申请ohos.permission.REQUIRE_FORM权限,且卡片布局文件(.ets)已正确配置。此方式提供了更流畅的用户体验,避免了传统长按图标的操作路径。

回到顶部