购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4.5 配置文件

HarmonyOS应用的每个HAP的根目录下都存在一个config.json配置文件,如图4-10所示。

图4-10 config.json配置文件

配置文件内容主要涵盖以下三个方面。

(1)应用的全局配置信息:包含应用的包名、生产厂商、版本号等基本信息。

(2)应用在具体设备上的配置信息:包含应用的备份恢复、网络安全等能力。

(3)HAP包的配置信息:包含每个Ability必须定义的基本属性(如包名、类名、类型以及Ability提供的能力)以及应用访问系统或其他应用受保护部分所需的权限等。

4.5.1 配置文件的组成

config.json配置文件采用JSON文件格式,其中包含一系列配置项,每个配置项由属性和值两部分构成。

(1)属性:属性出现顺序不分先后,且每个属性最多只允许出现一次。

(2)值:每个属性的值为JSON的基本数据类型(数值、字符串、布尔值、数组、对象或者null类型)。

应用的config.json配置文件由app、deviceConfig和module三个部分组成,缺一不可,其内部结构说明参见表4-3。

表4-3 配置文件的内部结构说明

以下是HelloWorld应用的配置文件:

接下来详解介绍上述配置的含义。

4.5.2 app对象的内部结构

app对象包含应用的全局配置信息,内部结构说明如下。

· bundleName:表示应用的包名,用于标识应用的唯一性。包名是由字母、数字、下划线(_)和点号(.)组成的字符串,必须以字母开头,支持的字符串长度为7~127字节。包名通常采用业界常用的反域名形式表示(如com.waylau.hmos)。建议第一级为域名扩展名com,第二级为厂商/个人名,第三级为应用名,也可以采用多级。

· vendor:表示对应用开发厂商的描述,字符串长度不超过255字节。该值可缺省,缺省值为空。

· version:表示应用的版本信息。

① code:表示应用的版本号,对用户不可见。其取值为大于零的整数。

② name:表示应用的版本号,用于向用户呈现。其取值可以自定义。

· apiVersion:表示应用依赖的HarmonyOS的API版本。

① compatible:表示应用运行需要的API最小版本。其取值为大于零的整数。

② target:表示应用运行需要的API目标版本。其取值为大于零的整数。可缺省,缺省值为应用所在设备的当前API版本。

③ releaseType:表示应用运行需要的API目标版本的类型。其取值为CanaryN(受限发布的版本)、BetaN(公开发布的Beta版本)或者Release(公开发布的正式版本),其中N代表大于零的整数。其值可缺省,缺省值为Release。

4.5.3 deviceConfig对象的内部结构

deviceConfig包含在具体设备上的应用配置信息,可以包含default、phone、tablet、tv、car、wearable、liteWearable和smartVision等属性。default标签内的配置适用于所有设备,其他设备类型如果有特殊需求,则需要在该设备类型的标签下进行配置。

· default:表示所有设备通用的应用配置信息。

· phone:表示手机类设备的应用信息配置。

· tablet:表示平板的应用配置信息。

· tv:表示智慧屏特有的应用配置信息。

· car:表示车机特有的应用配置信息。

· wearable:表示智能穿戴特有的应用配置信息。

· liteWearable:表示轻量级智能穿戴特有的应用配置信息。

· smartVision:表示智能摄像头特有的应用配置信息。

default、phone、tablet、tv、car、wearable、liteWearable和smartVision等对象的内部结构说明参见表4-4。

表4-4 不同设备的内部结构说明

表4-4中的network对象的内部结构说明如表4-5所示。

表4-5 network对象的内部结构说明

(续表)

表4-5中的securityConfig对象的domainSettings属性的内部结构说明如表4-6所示。

表4-6 securityConfig对象的domainSettings属性的内部结构说明

deviceConfig示例如下:

4.5.4 module对象的内部结构

module对象包含HAP包的配置信息,内部结构说明参见表4-7。

表4-7 module对象的内部结构说明

表4-7中的distro对象的内部结构说明参见表4-8。

表4-8 distro对象的内部结构说明

表4-7中的abilities对象的内部结构说明参见表4-9。

表4-9 abilities对象的内部结构说明

(续表)

(续表)

更多配置项的含义请参阅官方文档。 UHP0zDKfekfQZ7IXQzc+zn9EMXVBcw9lOKwAQSKQZYbHXzth0jdCGvAxNc48DQrB

点击中间区域
呼出菜单
上一章
目录
下一章
×