HarmonyOS鸿蒙Next服务卡片配置文件说明?
HarmonyOS鸿蒙Next服务卡片配置文件说明?
1、module.json5配置文件举例
卡片需要在module.json5配置文件中的extensionAbilities标签下,配置FormExtensionAbility相关信息。FormExtensionAbility需要填写metadata元信息标签,其中键名称为固定字符串“ohos.extension.form”,资源为卡片的具体配置信息的索引。
示例:
{
  "module": {
    ...
    "extensionAbilities": [
      {
        "name": "EntryFormAbility",
        "srcEntry": "./ets/entryformability/EntryFormAbility.ets",
        "label": "$string:EntryFormAbility_label",
        "description": "$string:EntryFormAbility_desc",
        "type": "form",
        "metadata": [
          {
            "name": "ohos.extension.form",
            "resource": "$profile:form_config"
          }
        ]
      }
    ]
  }
}
2、form_config.json配置文件详细说明:
在上述FormExtensionAbility的元信息(“metadata”配置项)中,可以指定卡片具体配置信息的资源索引。例如当resource指定为$profile:form_config时,会使用开发视图的resources/base/profile/目录下的form_config.json作为卡片profile配置文件。
表1 卡片form_config.json配置文件
| 属性名称 | 含义 | 数据类型 | 是否可缺省 | 
|---|---|---|---|
| name | 表示卡片的名称,字符串最大长度为127字节。 | 字符串 | 否 | 
| displayName | 表示卡片的显示名称。取值可以是名称内容,也可以是对名称内容的资源索引,以支持多语言。字符串最小长度为1字节,最大长度为30字节。 | 字符串 | 否 | 
| description | 表示卡片的描述。取值可以是描述性内容,也可以是对描述性内容的资源索引,以支持多语言。字符串最大长度为255字节。 | 字符串 | 可缺省,缺省为空。 | 
| src | 表示卡片对应的UI代码的完整路径。当为ArkTS卡片时,完整路径需要包含卡片文件的后缀,如:"./ets/widget/pages/WidgetCard.ets"。当为JS卡片时,完整路径无需包含卡片文件的后缀,如:"./js/widget/pages/WidgetCard" | 字符串 | 否 | 
| uiSyntax | 表示该卡片的类型,当前支持如下两种类型: | 字符串 | 可缺省,缺省值为hml | 
| window | 用于定义与显示窗口相关的配置。 | 对象 | 可缺省,缺省值见表2。 | 
| isDefault | 表示该卡片是否为默认卡片,每个UIAbility有且只有一个默认卡片。 | 布尔值 | 否 | 
| colorMode | 表示卡片的主题样式,取值范围如下: | 字符串 | 可缺省,缺省值为“auto”。 | 
| supportDimensions | 表示卡片支持的外观规格,取值范围: | 字符串数组 | 否 | 
| defaultDimension | 表示卡片的默认外观规格,取值必须在该卡片supportDimensions配置的列表中。 | 字符串 | 否 | 
| updateEnabled | 表示卡片是否支持周期性刷新(包含定时刷新和定点刷新),取值范围: | 布尔类型 | 否 | 
| scheduledUpdateTime | 表示卡片的定点刷新的时刻,采用24小时制,精确到分钟。 | 字符串 | 可缺省,缺省时不进行定点刷新。 | 
| updateDuration | 表示卡片定时刷新的更新周期,单位为30分钟,取值为自然数。 | 数值 | 可缺省,缺省值为“0”。 | 
| formConfigAbility | 表示卡片的配置跳转链接,采用URI格式。 | 字符串 | 可缺省,缺省值为空。 | 
| metadata | 表示卡片的自定义信息,参考Metadata数组标签。 | 对象 | 可缺省,缺省值为空。 | 
| dataProxyEnabled | 表示卡片是否支持卡片代理刷新,取值范围: | 布尔类型 | 可缺省,缺省值为false。 | 
| isDynamic | 表示此卡片是否为动态卡片(仅针对ArkTS卡片生效)。 | 布尔类型 | 可缺省,缺省值为true。 | 
| formVisibleNotify | 表示是否允许卡片使用卡片可见性通知(仅对系统应用的卡片生效)。 | 布尔类型 | 可缺省,缺省值为false。 | 
| transparencyEnabled | 表示是否支持卡片使用方设置此卡片的背景透明度(仅对系统应用的ArkTS卡片生效。)。 | 布尔类型 | 可缺省,缺省值为false。 | 
| fontScaleFollowSystem | 表示卡片使用方设置此卡片的字体是否支持跟随系统变化。 | 布尔类型 | 可缺省,缺省值为true。 | 
| supportShapes | 表示卡片的显示形状,取值范围如下: | 字符串 | 可缺省,缺省值为“rect”。 | 
表2 window对象的内部结构说明
| 属性名称 | 含义 | 数据类型 | 是否可缺省 | 
|---|---|---|---|
| designWidth | 标识页面设计基准宽度。以此为基准,根据实际设备宽度来缩放元素大小。 | 数值 | 可缺省,缺省值为720px。 | 
| autoDesignWidth | 标识页面设计基准宽度是否自动计算。当配置为true时,designWidth将会被忽略,设计基准宽度由设备宽度与屏幕密度计算得出 | 布尔值 | 可缺省,缺省值为false。 | 
3、form_config.json配置示例:
{
  "forms": [
    {
      "name": "widget",
      "displayName": "$string:widget_display_name",
      "description": "$string:widget_desc",
      "src": "./ets/widget/pages/WidgetCard.ets",
      "uiSyntax": "arkts",
      "window": {
        "designWidth": 720,
        "autoDesignWidth": true
      },
      "colorMode": "auto",
      "isDefault": true,
      "updateEnabled": true,
      "scheduledUpdateTime": "10:30",
      "updateDuration": 1,
      "defaultDimension": "2*2",
      "supportDimensions": [
        "2*2"
      ],
      "formConfigAbility": "ability://EntryAbility",
      "dataProxyEnabled": false,
      "isDynamic": true,
      "transparencyEnabled": false,
      "metadata": []
    }
  ]
}
更多关于HarmonyOS鸿蒙Next服务卡片配置文件说明?的实战教程也可以访问 https://www.itying.com/category-93-b0.html
HarmonyOS鸿蒙Next的服务卡片配置文件主要使用JSON格式进行定义,用于描述卡片的布局、样式、数据绑定等属性。配置文件通常包括以下几个关键部分:
- 
卡片基本信息:定义卡片的名称、类型、版本等元数据。例如:
{ "name": "weatherCard", "type": "service", "version": "1.0" } - 
布局定义:通过JSON结构描述卡片的UI布局,包括组件类型、位置、大小等。例如:
"layout": { "type": "stack", "children": [ { "type": "text", "text": "Weather", "fontSize": 20 }, { "type": "image", "src": "weather_icon.png" } ] } - 
数据绑定:定义卡片与后台数据的绑定关系,支持动态更新。例如:
"dataBinding": { "temperature": { "source": "weatherService", "path": "current.temperature" } } - 
事件处理:配置卡片上的交互事件,如点击、滑动等。例如:
"events": { "onClick": { "action": "openDetail", "params": { "cardId": "weatherCard" } } } - 
样式定义:定义卡片的视觉样式,如颜色、字体、边距等。例如:
"style": { "backgroundColor": "#FFFFFF", "padding": 10 } - 
生命周期管理:配置卡片的生命周期回调,如创建、销毁、更新等。例如:
"lifecycle": { "onCreate": "initCard", "onDestroy": "cleanupCard" } 
以上是HarmonyOS鸿蒙Next服务卡片配置文件的基本结构和内容,开发者可以根据具体需求进行配置和扩展。
更多关于HarmonyOS鸿蒙Next服务卡片配置文件说明?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
HarmonyOS鸿蒙Next的服务卡片配置文件(config.json)用于定义卡片的布局、样式和交互行为。主要包含以下部分:
- 卡片类型:定义卡片的尺寸和显示模式(如2x2、2x4等)。
 - 布局配置:指定卡片的UI组件及其排列方式。
 - 事件处理:定义用户交互事件(如点击、滑动)的响应逻辑。
 - 数据绑定:配置卡片与后台数据的关联方式。
 
通过合理配置,开发者可以创建灵活且高效的服务卡片,提升用户体验。
        
      
                  
                  
                  
