HarmonyOS 鸿蒙Next中锁屏卡片的开发文档没有详情的教程,不知道怎么开发

HarmonyOS 鸿蒙Next中锁屏卡片的开发文档没有详情的教程,不知道怎么开发 锁屏卡片的开发文档没有详情的教程,也不知道怎么开发,只有一些配置信息https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkts-ui-lockscreen-form-development

6 回复

锁屏卡片UI开发可以参考ArkTS卡片开发文档,卡片开发好后按照锁屏卡片开发指导文档中的步骤申请锁屏卡片开放能力并在form_config.json配置文件中配置renderingMode和supportDimensions字段即可。

注意:

  • 锁屏卡片只支持1*1、1*2尺寸的卡片;
  • 锁屏卡片不推荐展示用户个人隐私敏感数据,具体界面约束请参考卡片内容设计

更多关于HarmonyOS 鸿蒙Next中锁屏卡片的开发文档没有详情的教程,不知道怎么开发的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


锁屏卡片UI开发可以参考ArkTS卡片开发文档,卡片开发好后按照锁屏卡片开发指导文档中的步骤申请锁屏卡片开放能力并在form_config.json配置文件中配置renderingMode和supportDimensions字段即可

【锁屏卡片配置】

在form_config.json配置文件中,锁屏卡片必须配置renderingMode和supportDimensions字段。其中renderingMode字段仅支持配置为“singleColor”或者“autoColor”,supportDimensions字段取值中必须包含"11"或"12",具体参考配置文件字段说明

// entry/src/main/resources/base/profile/form_config.json
{
  "forms": [
    {
      "name": "widget",
      "displayName": "$string:widget_display_name",   
      "description": "$string:widget_desc",
      "src": "./ets/widget/pages/WidgetCard.ets",
      "uiSyntax": "arkts",
      "isDynamic": true,
      "isDefault": true,
      "updateEnabled": false,
      "scheduledUpdateTime": "10:30",
      "renderingMode": "autoColor",
      "updateDuration": 1,
      "defaultDimension": "1*2",
      "supportDimensions": [
        "1*2",
        "2*2"
      ]
    }
  ]
}

【锁屏卡片开放能力申请】

因为锁屏卡片会展示在设备的锁屏界面,出于数据隐私安全考虑,需要开发者申请上架开放能力。

因此在应用调试或发布时,必须使用手动签名,并在手动签名申请Profile过程中创建HarmonyOS应用,创建应用时参考如下指导为应用接入开放能力。

  1. 在"开放能力接入"页面,点击锁屏卡片对应的申请按钮。

    图片

  2. 在"新建业务申请"窗口填写申请信息,然后点击"提交"。申请原因:必填,不超过256个字符。上传附件:选填,仅可上传1个附件,大小不超过500MB。支持文本、表格、图片、视频、压缩包格式。

    图片

  3. 返回"开放能力接入"页面,原"申请"按钮变为"申请中",1-3个工作日反馈申请结果。

    图片

  4. 申请审批通过后,互动中心会发送通知给您,同时"申请中"按钮会变为置灰显示的"申请"。

    图片

  5. 能力申请通过后,勾选锁屏卡片的能力开关,点击右上角"保存"。至此,您的应用已成功接入开放能力。

    图片

【参考文档】

锁屏卡片开发指导-ArkTS锁屏卡片-ArkTS卡片提供方开发指导-ArkTS卡片开发(推荐)-Form Kit(卡片开发服务)-应用框架 - 华为HarmonyOS开发者

//基础配置
// entry/src/main/resources/base/profile/form_config.json
{
  "forms": [
    {
      "name": "LockScreenWidget",
      "description": "锁屏时钟卡片",
      "src": "./ets/widget/pages/LockScreenCard.ets",
      "uiSyntax": "arkts",
      "renderingMode": "autoColor",  // 必须为 singleColor/autoColor
      "supportDimensions": ["11"],   // 必须包含11或12尺寸
      "defaultDimension": "11",
      "isDynamic": false,
      "colorMode": "auto"
    }
  ]
}

布局实现

// LockScreenCard.ets
@Entry
@Component
struct LockScreenCard {
  build() {
    Column() {
      Text('12:30')
        .fontSize(26)
        .fontColor(Color.White)
      Text('2023-09-19')
        .fontSize(14)
        .margin({top:8})
    }
    .width('100%')
    .height('100%')
    .backgroundColor('#333333')
  }
}

鸿蒙Next锁屏卡片开发需使用ArkTS语言。开发文档可在华为开发者官网的HarmonyOS专区获取,重点查阅原子化服务与卡片开发相关章节。具体涉及FormExtensionAbility机制和卡片配置文件的编写规范。实际开发时需通过DevEco Studio创建原子化服务项目,在entry/src/main/resources/base/profile目录下配置form_config.json文件定义卡片属性,并在src/main/ets/entryformability/EntryFormAbility.ts实现卡片生命周期管理。

目前HarmonyOS Next的锁屏卡片开发文档确实还处于基础阶段,主要提供了配置规范和接口说明。建议重点关注以下几个方面:

  1. 掌握FormExtensionAbility基类,这是锁屏卡片的核心能力载体
  2. 熟悉锁屏卡片的生命周期管理,包括onAddForm、onRemoveForm等回调
  3. 仔细阅读配置文档中的约束条件,特别是锁屏卡片对布局和样式的限制
  4. 参考现有示例代码理解数据更新机制,使用updateForm方法刷新内容

实际开发中需要结合ArkTS声明式语法构建UI,并通过FormProvider实现数据绑定。由于文档还在完善中,建议多尝试实际编码,通过调试来验证功能实现。

回到顶部