deviceConfig内部结构

deviceConfig 包含设备上的应用配置信息,支持 defaulttvcarwearable 等属性。default 标签内的配置适用于所有通用设备,其他设备类型如需特定配置,需在相应标签下进行配置。

deviceConfig对象内部结构

表1 deviceConfig对象内部结构说明

属性名称 含义 数据类型 是否可缺省
default 能够使用全部系统能力的设备。 对象 可缺省,缺省值为空。
tablet 标识平板特有的应用配置信息。 对象 可缺省,缺省值为空。
tv 标识智慧屏特有的应用配置信息。 对象 可缺省,缺省值为空。
car 标识车机特有的应用配置信息。 对象 可缺省,缺省值为空。
wearable 标识智能穿戴特有的应用配置信息。 对象 可缺省,缺省值为空。

上表中各设备对象的内部结构说明参见deviceConfig设备对象内部结构

deviceConfig设备对象内部结构

表2 deviceConfig设备对象内部结构说明

属性名称 含义 数据类型 是否可缺省
process 标识应用或Ability的进程名。如果在deviceConfig标签下配置了process标签,则应用的所有Ability运行在此进程中。如果在abilities标签下为某个Ability配置了process标签,则该Ability运行在此进程中。该标签最大长度为31。 字符串 可缺省,缺省值为空。
keepAlive 标识应用是否始终保持运行状态,仅支持系统应用配置,三方应用配置不生效。
- true:应用始终保持为运行状态。系统启动时,该应用会被系统驱动起来。应用进程退出后,系统也会重新启动应用进程。
- false:应用不会始终保持为运行状态。系统启动时,该应用不会被系统驱动起来。应用进程退出后,系统不会重新启动应用进程。
布尔类型 可缺省,缺省值为false。
supportBackup 标识应用是否支持备份和恢复。
- true:该应用支持执行备份或恢复操作。
- false:该应用不支持执行备份或恢复操作。
布尔类型 可缺省,缺省值为false。
compressNativeLibs 该字段在打包HAP时标识libs库是否以压缩方式存储。
- true:libs库以压缩方式存储。
- false:libs库以不压缩方式存储。
在应用安装时,该字段用于标识libs库是否需要解压出来(API16及之后版本支持,之前的版本均默认解压libs库)。
- true:解压。
- false:不解压。
布尔类型 该标签可缺省。打包HAP时缺省值为false,安装应用时未配置则默认为true。
network 标识网络安全性配置。该标签允许应用通过配置文件的安全声明自定义其网络安全,无需修改应用代码。 对象 可缺省,缺省值为空。

network对象内部结构

表3 network对象内部结构说明

属性名称 含义 数据类型 是否可缺省
cleartextTraffic 标识是否允许应用使用明文网络流量(例如,明文HTTP)。
- true:允许应用使用明文流量的请求。
- false:拒绝应用使用明文流量的请求。
布尔类型 可缺省,缺省值为false。
securityConfig 标识应用的网络安全配置信息。 对象 可缺省,缺省为空。

securityConfig对象内部结构

表4 securityConfig对象内部结构说明

属性名称 含义 数据类型 是否可缺省
domainSettings 标识自定义网域范围的安全配置,支持多层嵌套。一个domainSettings对象中可嵌套更小网域范围的domainSettings对象。 对象类型 可缺省,缺省为空。

domainSettings对象内部结构

表5 domainSettings对象内部结构说明

属性名称 含义 数据类型 是否可缺省
cleartextPermitted 标识自定义网域范围内是否允许明文流量传输。cleartextTraffic和securityConfig同时存在时,以cleartextPermitted的值为准。
- true:允许明文流量传输。
- false:拒绝明文流量传输。
布尔类型 可缺省,缺省值为false。
domains 标识域名配置信息,包含两个参数:subdomains和name。
- subdomains:表示是否包含子域名。取值为"true"时,表示该规则将与相应网域及所有子网域(包括子网域的子网域)匹配;取值为"false"时,规则仅适用于精确匹配项。
- name:表示域名名称,为字符串类型。
对象数组 可缺省,缺省值为空。

以下是deviceConfig的示例:

"deviceConfig": {
  "default": {
    "process": "com.example.test.example",
    "supportBackup": false,
    "network": {
      "cleartextTraffic": true,
      "securityConfig": {
        "domainSettings": {
          "cleartextPermitted": true,
          "domains": [
            {
              "subdomains": true,
              "name": "example.ohos.com"
            }
          ]
        }
      }
    }
  }
}