跳转到内容

manifest 文件

manifest.json 文件中包含了应用描述、接口声明、页面路由信息

属性类型默认值必填描述
packagestring-应用包名,确认与原生应用的包名不一致,推荐采用 com.company.module 的格式,如:com.example.demo
namestring-应用名称,6 个汉字以内,与应用商店保存的名称一致,用于在桌面图标、弹窗等处显示应用名称
iconstring-应用图标,提供 114x114 大小的即可
versionNamestring-应用版本名称,如:"1.0"
versionCodenumber-应用版本号,从1自增,推荐每次重新上传包时versionCode+1
featuresFeatureInfo[]-接口列表,绝大部分接口都需要在这里声明,否则不能调用,详见每个接口的文档说明
configConfig-系统配置信息,详见下面说明
routerRouter-路由信息,详见下面说明
deviceTypeListArraywatch可选值有:watch, watch-square, watch-round, tv , car, phone
displayDisplay-UI 显示相关配置,详见下面说明
permissionsPermissionInfo[]-权限申请示例:[{ “name”: “watch.permission.LOCATION” }]
appCategoryAppCategory[]-应用类别,可选值详见下文应用类别说明,最多 2 个分类
customDataRecord<string, string>-开发者自定义字段,限定不超过 30 个字符,可通过 packageManager.getCustomData()方法读取
distrubuteRulesDistrubuteRules-表示分发规则,定义包对应的细分设备规格的分发策略,以便在应用市场进行云端分发应用包时做精准匹配。该标签可配置的分发策略维度包括 minAPILevel
widgetProviderWidgetProvider[]-注册和生命 widgetProvider,为蓝河智慧服务卡片提供数据

appCategory 要求开发者必填,如有开发者未填,系统将设置为 [‘other’]。

取值说明
business商业类应用
education教育类应用
pastime娱乐类应用
finance财务类应用
games游戏类应用
lifestyle生活方式类应用
medical医疗类应用
music音乐类应用
news新闻类应用
photography摄影类应用
reference参考资料类应用
social社交类应用
sports体育类应用
travel旅游类应用
utilities实用工具类应用
video视频类应用
weather天气类应用
navigation导航类应用
book书籍类应用
shopping购物类应用
podcasts播客类应用
audiobooks音频书籍类应用
radio电台类应用
other其它类应用

声明应用需要使用的 feature

属性类型默认值描述
namestring-feature 名称,可在具体 feature 的说明文档中查阅

示例:

{
"name": "blueos.storage.file"
}

用于定义系统配置和全局数据。

属性类型默认值描述
designWidthnumber-页面设计基准宽度,根据实际设备宽度来缩放元素大小,建议使用 466

示例:

{
"designWidth": 466
}

用于定义页面的组成和相关配置信息,如果页面没有配置路由信息,则在编译打包时跳过。

属性类型默认值必填描述
entrystring-首页名称
pagesRecord<string, Page>-页面配置列表,key 值为页面名称(对应页面目录名,例如 Hello 对应’Hello’目录),value 为页面详细配置 page,详见下面说明

示例:

{
"entry": "Demo",
"pages": {
"Demo1": {
"component": "index"
},
"Demo2": {
"component": "index"
}
}
}

用于定义单个页面路由信息。

属性类型默认值必填描述
componentstring-页面对应的组件名,与 ux 文件名保持一致,例如’hello’ 对应 ‘hello.ux’,目前仅支持 index.ux
pathstring/<页面名称>页面路径,例如“/user”,不填则默认为/<页面名称>。
path 必须唯一,不能和其他 page 的 path 相同。
下面 page 的 path 因为缺失,会被设置为“/Index”:
"Index": {"component": "index"}
launchModeLaunchModestandard声明页面的启动模式
followHandstringenable配置页面是否支持右滑跟手,disable:不支持;enable:支持

页面的启动模式

取值说明
singleTask每次打开目标页面都会打开已有的目标页面并回调 onRefresh 生命周期函数,清除该页面上打开的其他页面,没有打开过此页面时会创建新的目标页面实例。
standard每次打开新的目标页面(多次打开目标页面地址时会存在多个相同页面)

用于定义与 UI 显示相关的配置。

如果在 display 对象下定义以下属性值,则生效范围为此蓝河应用全部页面;

属性类型默认值描述
backgroundColorstring#000窗口背景颜色

示例:

{
"backgroundColor": "#ffffff"
}

权限配置信息

属性类型默认值含义
namePermissionName-权限名

示例:

{
"name": "watch.permission.LOCATION"
}

分发规则详细信息

属性类型默认值含义
minAPILevelnumber1表示最低的 APILevel 要求,只有支持该 APILevel 的系统版本,才能被分发。

示例:

{
"minAPILevel": 2
}

widgetProvider 详细配置信息

属性类型必填默认值含义
namestring-widgetProvider 名称
pathstring-widgetProvider 的 js 文件路径

示例:

{
"name": "music",
"path": "/widgetProvider/index.js"
}

权限名及模块接口信息,该信息也可以在具体的模块文档中查看。

权限名模块说明权限错误码
watch.permission.LOCATION@blueos.hardware.geolocation位置信息400 : 拒绝授予权限, 402: 权限错误(未声明该权限)
watch.permission.STEP_COUNTER@blueos.hardware.sensor计步传感器400 : 拒绝授予权限, 402: 权限错误(未声明该权限)
watch.permission.DEVICE_INFO@blueos.hardware.device设备信息400: 拒绝授予权限 , 402: 权限错误(未声明该权限)
watch.permission.RECORD@blueos.multimedia.record录音400: 拒绝授予权限, 401: 敏感权限不能在后台运行, 402: 权限错误(未声明该权限)
watch.permission.BLUETOOTH@blueos.communication.bluetooth.bluetooth
@vivo.bluetooth允许使用设备蓝牙400 : 拒绝授予权限, 402: 权限错误(未声明该权限)
watch.permission.READ_HEALTH_DATA@blueos.health.health
@vivo.health读取健康数据400 : 拒绝授予权限, 402: 权限错误(未声明该权限)