# manifest 文件
手机 手表
manifest.json 文件中包含了应用描述、接口声明、页面路由信息
# manifest
| 属性 | 类型 | 默认值 | 必填 | 描述 |
|---|---|---|---|---|
| package | String | - | 是 | 应用包名,确认与原生应用的包名不一致,推荐采用 com.company.module 的格式,如:com.example.demo |
| name | String | - | 是 | 应用名称,6 个汉字以内,与应用商店保存的名称一致,用于在桌面图标、弹窗等处显示应用名称 |
| icon | String | - | 是 | 应用图标,提供 192x192 大小的即可 |
| versionName | String | - | 否 | 应用版本名称,如:"1.0" |
| versionCode | Integer | - | 是 | 应用版本号,从1自增,推荐每次重新上传包时versionCode+1 |
| minPlatformVersion | Integer | - | 否 | 快应用支持的最小平台版本号,兼容性检查,避免上线后在低版本平台运行并导致不兼容;如果不填按照内测版本处理。注意:此配置是快应用,不是卡片的平台版本号。卡片平台版本号配置参见下面router.widgets说明 |
| features | Array | - | 否 | 接口列表,绝大部分接口都需要在这里声明,否则不能调用,详见每个接口的文档说明 |
| config | Object | - | 是 | 系统配置信息,详见下面说明 |
| router | Object | - | 是 | 路由信息,详见下面说明 |
| display | Object | - | 否 | UI 显示相关配置,详见下面说明 |
# config
用于定义系统配置和全局数据。
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| designWidth | Integer | 750 | 页面设计基准宽度,根据实际设备宽度来缩放元素大小 |
# router
用于定义快应用和卡片页面的组成和相关配置信息,如果页面没有配置路由信息,则在编译打包时跳过。
| 属性 | 类型 | 默认值 | 必填 | 描述 |
|---|---|---|---|---|
| entry | String | - | 是 | 首页名称;使用分包功能时,建议将首页定义在基础包中 |
| pages | Object | - | 是 | 页面配置列表,key 值为页面名称(对应页面目录名,例如 Hello 对应'Hello'目录),value 为页面详细配置 page,详见下面说明 |
示例代码:
"router": {
"entry": "Demo",
"errorPage": "ErrorPage",
"pages": {
"Demo": {
"component": "index"
},
"ErrorPage": {
"component": "index"
},
}
}
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# router.pages
用于定义单个页面路由信息。
| 属性 | 类型 | 默认值 | 必填 | 描述 |
|---|---|---|---|---|
| component | String | - | 是 | 页面对应的组件名,与 ux 文件名保持一致,例如'hello' 对应 'hello.ux' |
| path | String | /<页面名称> | 否 | 页面路径,例如“/user”,不填则默认为/<页面名称>。 path 必须唯一,不能和其他 page 的 path 相同。 下面 page 的 path 因为缺失,会被设置为“/Index”: "Index": {"component": "index"} |
launchMode 1050+ | String | standard | 否 | 声明页面的启动模式,支持"singleTask","standard"两种页面启动模式。 标识为"singleTask"模式时每次打开目标页面都会打开已有的目标页面并回调 onRefresh 生命周期函数,清除该页面上打开的其他页面,没有打开过此页面时会创建新的目标页面实例。 标识为"standard"模式时会每次打开新的目标页面(多次打开目标页面地址时会存在多个相同页面) |
# router.widgets
用于定义卡片的路由信息。
| 属性 | 类型 | 必填 | 说明 |
|---|---|---|---|
| widgets | Object | 否 | 卡片列表,key 值为卡片名称(对应卡片目录名,例如 cards/Card 对应cards/Card目录,/<key 值>为卡片访问路径,是卡片的唯一标识),value 为卡片详细配置 widget,详见下面说明 |
# widget 详细说明
| 属性 | 类型 | 必填 | 描述 |
|---|---|---|---|
| name | String | 是 | 卡片名称(需谨慎填写此字段,可能会被展示,比如通知栏) |
| description | String | 否 | 卡片描述(需谨慎填写此字段,可能会被展示) |
| component | String | 是 | 卡片对应的组件名,与 ux 文件名保持一致,例如'card' 对应 'card.ux' |
| features | Array | 否 | 本卡片使用的接口列表,卡片的接口列表单独定义,在某些场景下可以做提前申请(例如负一屏) |
| minCardPlatformVersion | Integer | 是 | 支持的最小卡片平台版本号注意:卡片minCardPlatformVersion版本号字段有别于快应用的minPlatformVersion,具体支持的卡片平台版本号请参考本文档所列 |
| targetManufacturers | Array | 否 | 目标厂商,字段可选,若配置此字段,则需要指定对应厂商,如不指定,可能不能在对应的厂商上架,当前支持厂商字段:"vivo", "OPPO", "xiaomi", "honor" |
| sizes | Array | 是 | 卡片支持的外观尺寸选项,每个尺寸选项表示该组件在布局网格中的占位大小(宽度和高度,以栅格个数为单位),支持 "FULL"(全宽/全高)、"AUTO" (宽度/高度自适应)与具体数值的组合,并通过格式如 "2*2"、"FULL*4"、"1*FULL"、"4*AUTO"来定义。参考各厂商入口支持情况进行设置。 |
| deviceTypeList | Array | 否 | 可选值有:phone,watch, 默认为 phone |
widgets 字段定义在 router 字段中,如卡片源文件在 src/cards/card/index.ux 中,则 widgets 定义如下
{
"router": {
"widgets": {
"cards/card": {
"name": "卡片",
"description": "这是一个快应用卡片",
"component": "index",
"minCardPlatformVersion": 2000,
"path": "/cards/card",
"features": [
{
"name": "system.network"
},
{
"name": "system.router"
}
],
"sizes":["2x4","4x4","2xAUTO","FULLx4"],
"deviceTypeList": ["phone", "watch"]
}
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# widget.sizes详细说明
- 尺寸格式说明
卡片尺寸格式为 "宽度*高度",宽度和高度可以使用具体数值、"FULL"或"AUTO" 表示,也可以组合使用。
- 具体数值:定义卡片在布局网格中占据的固定栅格数。
- "FULL":表示卡片宽度或高度填充卡片容器的整个可用空间。
- "AUTO":表示卡片宽度或高度根据内容的大小自适应调整,不会固定在特定栅格数,也不会填满卡片容器。
- 举例:
- "2x2" 表示卡片占用2个单位的栅格宽度和2个单位的栅格高度。
- "FULLx4" 表示卡片宽度为屏幕的整个宽度,高度为4个栅格单位。
- "4xAUTO" 表示卡片宽度占据4个栅格单位,而高度根据卡片内容的大小自动调整。
配置示例:
{ "router": { "widgets": { "cards/card": { "sizes": ["4x2","4x4"] } } } }1
2
3
4
5
6
7
8
9上述配置说明该卡片支持两种尺寸:"4x2","4x4",开发者需确保页面布局能够正确适配这两种尺寸,并确保卡片在不同屏幕上均能正常显示。
尺寸示意图:

注意:屏幕栅格划分因厂商和设备不同,需根据实际设备情况参考具体的栅格布局。上图展示了常见的网格划分及卡片尺寸示例,其他尺寸可按相同逻辑理解和应用。请根据您的实际需求进行调整,以确保最佳适配效果。
不同设备类型下支持的卡片尺寸
设备类型 支持卡片尺寸 手机 "2x1" ,"2x2" ,"4x2" ,"4x4" 折叠屏 "2x1" ,"2x2" ,"4x2" ,"4x4" 平板 "2x2" ,"4x2" ,"4x4","8x4" 开发者在为特定设备配置卡片时,需根据设备类型选择合适的尺寸,以确保布局的美观性与功能性。
适配建议
由于不同厂商对卡片尺寸的支持情况有所不同,为了确保卡片配置适应各类设备,建议开发者参考以下适配建议:
- 根据具体平台的要求,灵活设置卡片尺寸。
- 为不同尺寸的屏幕提供响应式设计,使布局能够自适应调整,兼顾用户体验。
这有助于卡片在手机、折叠屏和平板设备上均有良好的显示效果,并确保布局一致性。
←
→
