• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 打包拆包工具使用说明
2
3## 简介
4
5packing_tool子系统用于生成打包工具和拆包工具,其中打包工具用于hap,app,hqf,appqf,hsp包的生成,拆包工具用于对hap,app,hqf,appqf,har,hsp包的拆包及对hap,hsp,app,appqf的解析。具体的功能介绍如下:
6
7打包工具子系统架构图如下:
8
9![](https://gitee.com/openharmony/developtools_packing_tool/raw/master/img/%E6%89%93%E5%8C%85%E5%B7%A5%E5%85%B7%E6%9E%B6%E6%9E%84%E5%9B%BE.webp)
10
11## 1. 打包指令说明
12
13### 1.1 hap包模式打包指令
14
15#### 1.1.1 示例
16
17- Stage模型的打包命令示例:
18
19
20```
21java -jar app_packing_tool.jar --mode hap --json-path <option> --resources-path <option> --ets-path <option> --index-path <option> --pack-info-path <option> --out-path path\out\srcEntrance.hap --force true --compress-level 5 --pkg-context-path <option>
22```
23
24- FA模型的打包命令示例:
25
26
27```
28java -jar app_packing_tool.jar --mode hap --json-path <option> --maple-so-path [option] --profile-path [option] --maple-so-dir [option] --dex-path [option] --lib-path [option] --resources-path [option] --index-path [option] --out-path <option> --force [option] --compress-level 5
29```
30
31#### 1.1.2 参数含义及规范
32
33| 指令               | 是否必选项 | 选项                   | 描述                                                        | 备注         |
34|------------------|-------|----------------------|-----------------------------------------------------------|------------|
35| --mode           | 是     | hap                  | 打包类型。                                                     | NA         |
36| --json-path      | 是     | NA                   | .json文件路径,FA模型文件名必须为config.json;stage模型文件名必须为module.json。 | NA         |
37| --profile-path   | 否     | NA                   | CAPABILITY.profile文件路径。                                   | NA         |
38| --maple-so-path  | 否     | NA                   | maple so文件输入路径,so文件路径,文件名必须以.so为后缀。如果是多个so需要用“,”分隔。       | NA         |
39| --maple-so-dir   | 否     | NA                   | maple so目录输入路径。                                           | NA         |
40| --dex-path       | 否     | NA                   | 1.dex文件路径,文件名必须以.dex为后缀。如果是多个dex需要用“,”分隔。2.dex文件路径也可以为目录。 | NA         |
41| --lib-path       | 否     | NA                   | lib库文件路径。                                                 | NA         |
42| --resources-path | 否     | NA                   | resources资源包路径。                                           | NA         |
43| --index-path     | 否     | NA                   | .index文件路径,文件名必须为resources.index。                         | NA         |
44| --pack-info-path | 否     | NA                   | pack.info文件路径,文件名必须为pack.info。                            | NA         |
45| --rpcid-path     | 否     | NA                   | rpcid.sc文件路径,文件名必须为rpcid.sc。                              | NA         |
46| --js-path        | 否     | NA                   | 存放js文件目录路径。                                               | 仅stage模型生效 |
47| --ets-path       | 否     | NA                   | 存放ets文件目录路径。                                              | 仅stage模型生效 |
48| --out-path       | 是     | NA                   | 目标文件路径,文件名必须以.hap为后缀。                                     | NA         |
49| --force          | 否     | true或者false          | 默认值为false,如果为true,表示当目标文件存在时,强制删除。                        | NA         |
50| --an-path        | 否     | NA                   | 存放an文件的路径。                                                | 仅stage模型生效 |
51| --ap-path        | 否     | NA                   | 存放ap文件的路径。                                                | 仅stage模型生效 |
52| --dir-list       | 否     | NA                   | 可指定目标文件夹列表,将其打入hap包内。                                   | NA         |
53| --compress-level | 否     | number               | 压缩等级,默认值1,可选等级1-9。在应用配置compressNativeLibs参数为true的情况下生效,数值越大压缩率越高、压缩速度越慢。  | NA    |
54| --pkg-context-path      | 否         | NA            | 可指定语境信息表文件路径,文件名必须为pkgContextInfo.json。 | 仅stage模型生效              |
55| --hnp-path | 否 | NA | 指定native软件包文件路径,将native软件包打入hap包内。 | NA |
56
57### 1.2 res模式打包指令
58
59#### 1.2.1 示例
60
61```
62java -jar app_packing_tool.jar --mode res --entrycard-path [option] --pack-info-path [option] --out-path [option] --force [option]
63```
64
65#### 1.2.2 参数含义及规范
66
67| 指令               | 是否必选项 | 选项            | 描述                                 |
68|------------------|-------|---------------|------------------------------------|
69| --mode           | 是     | res           | 命令类型。                              |
70| --entrycard-path | 是     | NA            | 快照目录的路径。                           |
71| --pack-info-path | 是     | NA            | pack.info文件路径,包含卡片信息。              |
72| --out-path       | 是     | NA            | 目标文件路径,文件名必须以.res为后缀。              |
73| --force          | 否     | true或者false   | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 |
74
75### 1.3 app包模式打包指令
76
77#### 1.3.1 示例
78
79```
80java -jar app_packing_tool.jar --mode app --hap-path <option> --hsp-path <option> --out-path [option] --signature-path [option] --certificate-path [option] --pack-info-path [option] --force [option]
81```
82
83#### 1.3.2 参数含义及规范
84
85| 指令                 | 是否必选项 | 选项          | 描述                                                           |
86|--------------------|-------|-------------|--------------------------------------------------------------|
87| --mode             | 是     | app         | 多个hap需满足hap的合法性校验。                                           |
88| --hap-path         | 否     | NA          | 1.hap包文件路径,文件名必须以.hap为后缀。如果时多个hap包需要用“,”分隔。2.hap包文件路径也可以是目录。 |
89| --hsp-path         | 否     | NA          | 1.hsp包文件路径,文件名必须以.hsp为后缀。如果时多个hsp包需要用“,”分隔。2.hsp包文件路径也可以是目录。 |
90| --pack-info-path   | 是     | NA          | 文件名必须为pack.info。                                             |
91| --out-path         | 是     | NA          | 目标文件路径,文件名必须以.app为后缀。                                        |
92| --signature-path   | 否     | NA          | 签名路径。                                                        |
93| --certificate-path | 否     | NA          | 证书路径。                                                        |
94| --pack-res-path    | 否     | NA          | 打包res的目标文件路径,文件名需要为pack.res。                                 |
95| --force            | 否     | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。                           |
96
97#### 1.3.3 打包app时hap的合法性校验
98
99在对工程内的hap、hsp包打包生成app包时,需要保证被打包的每个hap、hsp在json文件中配置的bundleName,versionCode,minCompatibleVersionCode,minAPIVersion,targetAPIVersion相同,moduleName唯一,对于fa模型,还需要保证json文件中配置的package唯一。hap模块之间需要保证apiReleaseType相同,hsp模块不校验apiReleaseType。
100
101#### 1.3.4 打包app时的压缩规则
102
103打包app时,对release模式的hap、hsp包会进行压缩,对debug模式的hap、hsp包不会压缩。
104
105### 1.4 多工程打包
106
107#### 1.4.1 示例
108
109```
110java -jar app_packing_tool.jar --mode multiApp --hap-list 1.hap,2.hap --app-list 1.app,2.app --out-path final.app
111```
112
113#### 1.4.2 参数含义及规范
114
115| 指令         | 是否必选项 | 选项        | 描述                                                                                                |
116|------------|-------|-----------|---------------------------------------------------------------------------------------------------|
117| --mode     | 是     | multiApp  | 打包类型,在将多个hap打入同一个app时,需保证每个hap满足合法性校验规则。                                                          |
118| --hap-list | 否     | hap的路径    | 1.hap包文件路径,文件名必须以.hap为后缀。如果是多个hap包需要”,“分隔。2.hap文件路径也可以是目录。                                        |
119| --hsp-list | 否     | hsp的路径    | 1.hsp包文件路径,文件名必须以.hsp为后缀。如果是多个hsp包需要”,“分隔。2.hsp文件路径也可以是目录。                                        |
120| --app-list | 否     | app的路径    | 1.app文件路径,文件名必须以.app为后缀。如果是多个app包需要用”,“分隔。2.app文件路径也可以是目录。3.--hap-list,--hsp-list,--app-list不可以都不传。 |
121| --out-path | 是     | NA          | 目标文件路径,文件名必须以.app为后缀。            |
122| --force    | 否     | 默认值为false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。                                                                |
123
124#### 1.4.3 多工程打包hap合法性校验
125
126需要保证被打包的每个hap在json文件中配置的bundleName,versionCode,minCompatibleVersionCode相同,minAPIVersion,targetAPIVersion相同,moduleName唯一,同一设备entry唯一,对于fa模型,还需要保证json文件中配置的package唯一。hap模块之间需要保证apiReleaseType相同,hsp模块不校验apiReleaseType。
127
128### 1.5 hqf模式打包指令
129
130#### 1.5.1 示例
131
132```
133java -jar app_packing_tool.jar --mode hqf --json-path <option> --lib-path <option> --ets-path <option> --resources-path <option> --out-path <option>
134```
135
136#### 1.5.2 参数含义及规范
137
138| 指令          | 是否必选项 | 选项          | 描述                                 |
139|-------------|-------|-------------|------------------------------------|
140| --mode      | 是     | hqf         | 打包类型。                              |
141| --json-path | 是     | NA          | .json文件路径,文件名必须为patch.json。        |
142| --lib-path  | 否     | NA          | lib库文件的路径。                         |
143| --ets-path  | 否     | NA          | 存放ets文件目录路径。                       |
144| --resources-path  | 否     | NA          | resources资源包路径。                       |
145| --out-path  | 是     | NA          | 目标文件路径,文件名必须以.hqf为后缀。              |
146| --force     | 否     | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 |
147
148### 1.6 appqf模式打包指令
149
150#### 1.6.1 示例
151
152```
153java -jar app_packing_tool.jar --mode appqf --hqf-list <option> --out-path <option>
154```
155
156#### 1.6.2 参数含义及规范
157
158| 指令         | 是否必选项 | 选项          | 描述                                 |
159|------------|-------|-------------|------------------------------------|
160| --mode     | 是     | appqf       | 打包类型。                              |
161| --hqf-list | 是     | NA          | hqf文件路径,多个hqf以英文逗号隔开。              |
162| --out-path | 是     | NA          | 目标文件路径,文件名必须以.appqf为后缀。            |
163| --force    | 否     | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 |
164
165
166### 1.7 hsp模式打包指令
167
168#### 1.7.1 示例
169```
170java -jar path\app_packing_tool.jar --mode hsp --json-path <option> --resources-path <option> --ets-path <option> --index-path <option> --pack-info-path <option> --out-path path\out\library.hsp --force true --compress-level 5 --pkg-context-path <option>
171```
172
173#### 1.7.2 参数含义及规范
174
175| 指令               | 是否必选项 | 选项                   | 描述                                                        |
176|------------------|-------|----------------------|-----------------------------------------------------------|
177| --mode           | 是     | hsp                  | 打包类型。                                                     |
178| --json-path      | 是     | NA                   | .json文件路径,文件名必须为module.json。                              |
179| --profile-path   | 否     | NA                   | CAPABILITY.profile文件路径。                                   |
180| --dex-path       | 否     | NA                   | 1.dex文件路径,文件名必须以.dex为后缀。如果是多个dex需要用“,”分隔。2.dex文件路径也可以为目录。 |
181| --lib-path       | 否     | NA                   | lib库文件路径。                                                 |
182| --resources-path | 否     | NA                   | resources资源包路径。                                           |
183| --index-path     | 否     | NA                   | .index文件路径,文件名必须为resources.index。                         |
184| --pack-info-path | 否     | NA                   | pack.info文件路径,文件名必须为pack.info。                            |
185| --js-path        | 否     | NA                   | 存放js文件目录路径。                                               |
186| --ets-path       | 否     | NA                   | 存放ets文件目录路径。                                              |
187| --out-path       | 是     | NA                   | 目标文件路径,文件名必须以.hsp为后缀。                                     |
188| --force          | 否     | true或者false          | 默认值为false,如果为true,表示当目标文件存在时,强制删除。                        |
189| --an-path        | 否     | NA                   | 存放an文件的路径。                                                |
190| --ap-path        | 否     | NA                   | 存放ap文件的路径。                                                |
191| --dir-list       | 否     | NA                   | 可指定目标文件夹列表,将其打入hap包内                               |
192| --compress-level | 否     | number               | 压缩等级,默认值1,可选等级1-9。在应用配置compressNativeLibs参数为true的情况下生效,数值越大压缩率越高、压缩速度越慢。  |
193| --pkg-context-path      | 否         | NA            | 可指定语境信息表文件路径,文件名必须为pkgContextInfo.json。 |
194
195### 1.8 versionNormalize模式指令
196
197如果一个应用由多个团队开发,当只有一个hap或hsp需要修改升级时,可以调用此命令,将多个hap、hsp的版本统一。本命令会修改所传入的hap、hsp的版本号和版本名称,并在指定目录生成修改后的同名hap、hsp,以及一个version_record.json文件,用于记录所有hap、hsp原有的版本号、版本名称。
198
199#### 1.8.1 示例
200```
201java -jar path\app_packing_tool.jar --mode versionNormalize --input-list 1.hap,2.hsp --version-code 1000001 --version-name 1.0.1 --out-path path\out\
202```
203
204#### 1.8.2 参数含义及规范
205
206| 指令             | 是否必选项 | 选项               | 描述                                                                |
207|----------------|-------|------------------|-------------------------------------------------------------------|
208| --mode         | 是     | versionNormalize | 命令类型。                                                             |
209| --input-list   | 是     | hap或hsp的路径       | 1.hap或hsp包文件路径,文件名必须以.hap或.hsp为后缀。如果是多个hap包需要”,“分隔。2.hap包或hsp包目录。 |
210| --version-code | 是     | 版本号              | 指定的版本号,hap、hsp的版本号会被修改为该版本。需要为整数,且不小于所有传入的hap、hsp的版本号。            |
211| --version-name | 是     | 版本名称             | 指定的版本名称,hap、hsp的版本名称会被修改为该版本名称。                                   |
212| --out-path     | 是     | NA               | 目标文件路径,需要为一个目录。                                                   |
213
214### 1.9 packageNormalize模式指令
215
216可以调用此命令,将集成态HSP的包名和版本号设置成应用侧的包名和版本号,并在指定目录生成修改后的同名HSP。
217
218#### 1.9.1 示例
219```
220java -jar path\app_packing_tool.jar --mode packageNormalize --hsp-list path\1.hsp,path\2.hsp --bundle-name com.example.myapplication --version-code 1000001 --out-path path\out\
221```
222
223#### 1.9.2 参数含义及规范
224
225| 指令             | 是否必选项 | 选项               | 描述                                                  |
226|----------------|-------|------------------|-----------------------------------------------------|
227| --mode         | 是     | packageNormalize | 命令类型。                                               |
228| --hsp-list     | 是     | HSP的路径           | 1.HSP包文件路径,文件名必须以.hsp为后缀。如果是多个HSP包需要”,“分隔。2.HSP包目录。 |
229| --bundle-name  | 是     | 包名               | 指定的包名,HSP的包名会被修改为指定的包名。                             |
230| --version-code | 是     | 版本号              | 指定的版本号,HSP的版本号会被修改为该版本号。需要为整数,且大于0。                 |
231| --out-path     | 是     | NA               | 目标文件路径,需要为一个目录。                                     |
232
233### 1.10 fastApp模式打包指令
234
235#### 1.10.1 示例
236
237```
238java -jar app_packing_tool.jar --mode fastApp --hap-path <option> --hsp-path <option> --out-path [option] --signature-path [option] --certificate-path [option] --pack-info-path [option] --force [option]
239```
240
241#### 1.10.2 参数含义及规范
242
243| 指令                 | 是否必选项 | 选项         | 描述                                                                                                    |
244|--------------------|-------|------------|-------------------------------------------------------------------------------------------------------|
245| --mode             | 是     | fastApp    | 多个hap需满足hap的合法性校验。                                                                                    |
246| --hap-path         | 否     | NA         | hap包文件目录路径,目录内要包含一个完整的hap包的所有文件。允许传入多个路径,多个路径需要用英文“,”分隔。                                              |
247| --hsp-path         | 否     | NA         | 1.hsp包文件路径,文件名必须以.hsp为后缀。如果时多个hsp包需要用“,”分隔。2.hsp包文件目录路径,目录内要包含一个完整的hsp包的所有文件。允许传入多个路径,多个路径需要用英文“,”分隔。 |
248| --pack-info-path   | 是     | NA         | 文件名必须为pack.info。                                                                                      |
249| --out-path         | 是     | NA         | 目标文件路径,文件名必须以.app为后缀。                                                                                 |
250| --signature-path   | 否     | NA         | 签名路径。                                                                                                 |
251| --certificate-path | 否     | NA         | 证书路径。                                                                                                 |
252| --pack-res-path    | 否     | NA         | 打包res的目标文件路径,文件名需要为pack.res。                                                                          |
253| --force            | 否     | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。                                                                    |
254
255#### 1.10.3 打包app时hap、hsp的合法性校验
256
257在对工程内的hap、hsp包打包生成app包时,需要保证被打包的每个hap、hsp在json文件中配置的bundleName,versionCode,minCompatibleVersionCode,minAPIVersion,targetAPIVersion相同,moduleName唯一。hap模块之间需要保证apiReleaseType相同,hsp模块不校验apiReleaseType。
258
259## 2. 拆包指令说明
260
261### 2.1 hap包模式拆包指令
262
263#### 2.1.1 示例
264
265```
266java -jar app_unpacking_tool.jar --mode <option> --hap-path <options> --out-path [option] --force [option]
267```
268
269#### 2.1.2 参数含义及规范
270
271| 指令       | 是否必选项 | 选项          | 描述                                                         |
272| ---------- | ---------- | ------------- | ------------------------------------------------------------ |
273| --mode     | 是         | hap           | 拆包类型。                                                   |
274| --hap-path | 是         | NA            | hap包路径。                                                  |
275| --rpcid    | 否         | true或者false | 是否单独将rpcid文件从hap包中提取到指定目录,如果为true,将仅提取rpcid文件,不对hap包进行拆包。 |
276| --out-path | 是         | NA            | 拆包目标文件路径。                                           |
277| --force    | 否         | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。  |
278
279### 2.2 har包模式拆包指令
280
281#### 2.2.1 示例
282
283```
284java -jar app_unpacking_tool.jar --mode <options> --har-path <option> --out-path [option] --force [option]
285```
286
287#### 2.2.2 参数含义及规范
288
289| 指令       | 是否必选项 | 选项          | 描述                                                        |
290| ---------- | ---------- |-------------| ----------------------------------------------------------- |
291| --mode     | 是         | har         | 拆包类型。                                                  |
292| --har-path | 是         | NA          | har包路径。                                                 |
293| --out-path | 是         | NA          | 拆包目标文件路径。                                          |
294| --force    | 否         | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 |
295
296### 2.3 app包模式拆包指令
297
298#### 2.3.1 示例
299
300```
301java -jar app_unpacking_tool.jar --mode <options> --app-path <option> --out-path [option] --force [option]
302```
303
304#### 2.3.2 参数含义及规范
305
306| 指令       | 是否必选项 | 选项          | 描述                                                        |
307| ---------- | ---------- |-------------| ----------------------------------------------------------- |
308| --mode     | 是         | app         | 拆包类型。                                                  |
309| --app-path | 是         | NA          | app包路径。                                                 |
310| --out-path | 是         | NA          | 拆包目标文件路径。                                          |
311| --force    | 否         | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 |
312
313### 2.4 从hap包中获取rpcid文件
314
315#### 2.4.1 示例
316
317```
318java -jar app_unpacking_tool.jar --mode hap --rpcid true --hap-path <option> --out-path <option> --force true
319```
320
321#### 2.4.2 参数含义及规范
322
323| 指令       | 是否必选项 | 选项          | 描述                                                         |
324| ---------- | ---------- | ------------- | ------------------------------------------------------------ |
325| --mode     | 是         | hap           | 拆包类型                                                     |
326| --rpcid    | 否         | true或者false | 是否单独将rpcid文件从hap包中提取到指定目录,如果为true,将仅提取rpcid文件,不对hap包进行拆包。 |
327| --hap-path | 是         | NA            | hap包路径                                                    |
328| --out-path | 是         | NA            | 拆包rpcid目标文件路径                                        |
329| --force    | 否         | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。  |
330
331### 2.5 hsp包模式拆包指令
332
333#### 2.5.1 示例
334
335```
336java -jar app_unpacking_tool.jar --mode <option> --hsp-path <options> --out-path [option] --force [option]
337```
338
339#### 2.5.2 参数含义及规范
340
341| 指令         | 是否必选项 | 选项          | 描述                                 |
342|------------| ---------- |-------------|------------------------------------|
343| --mode     | 是         | hsp         | 拆包类型。                              |
344| --hsp-path | 是         | NA          | hsp包路径。                            |
345| --out-path | 是         | NA          | 拆包目标文件路径。                          |
346| --force    | 否         | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 |
347
348### 2.6 appqf模式拆包指令
349
350#### 2.6.1 示例
351
352```
353java -jar app_unpacking_tool.jar --mode <option> --appqf-path <options> --out-path [option] --force [option]
354```
355
356#### 2.6.2 参数含义及规范
357
358| 指令           | 是否必选项 | 选项          | 描述                                 |
359|--------------| ---------- |-------------|------------------------------------|
360| --mode       | 是         | appqf       | 拆包类型。                              |
361| --appqf-path | 是         | NA          | appqf包路径。                          |
362| --out-path   | 是         | NA          | 拆包目标文件路径。                          |
363| --force      | 否         | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 |
364
365## 3. 包解析接口
366
367### 3.1 接口目录
368
369| 类名               | 接口原型                                                     | 类型     | 接口详细描述                                                            |
370| ------------------ | ------------------------------------------------------------ | -------- |-------------------------------------------------------------------|
371| UncompressEntrance | UncomperssResult parseApp(String appPath,String parseMode,String deviceType,String hapName) | Java接口 | 接口功能:根据参数解析app包的pack.info信息 输入参数:app包路径,解析参数 返回值:UncomperssResult |
372| UncompressEntrance | UncomperssResult parseApp(InputStream input,String parseMode,String deviceType,String hapName,String outPath) | Java接口 | 接口功能:根据参数解析app包的pack.info信息 输入参数:app文件流,解析参数 返回值:UncomperssResult |
373| UncompressEntrance | UncomperssResult parseHap(String hapPath)                    | Java接口 | 接口功能:根据参数解析app包的json配置文件 输入参数:hap包路径,解析参数 返回值:UncomperssResult    |
374| UncompressEntrance | UncomperssResult parseHap(InputStream input)                 | Java接口 | 接口功能:根据参数解析app包的json配置文件 输入参数:hap包文件流,解析参数 返回值:UncomperssResult   |
375
376## 4. 拆包工具信息字段
377
378### 4.1 UncomperssResult(Bundle信息)结构体信息
379
380| 字段            | 类型               | 描述                                     | 备注 |
381| ----------------| ------------------ |----------------------------------------| ---- |
382| result          | boolean            | 标识此次解析是否成功                             | NA   |
383| message         | String             | 解析失败时返回失败原因                            | NA   |
384| packInfos       | List\<PackInfo>    | bundle中pack.info文件的packages信息          | NA   |
385| profileInfos    | List\<profileInfo> | 应用的配置信息                                | NA   |
386| profileInfosStr | List\<String>      | 应用的配置信息 | NA   |
387| icon            | String             | 返回入口组件的icon路径,如果没有入口组件,则返回第一个组件的icon信息 | NA   |
388| label           | String             | 返回入口组件的label,如果没有入口组件,则返回第一个组件的label信息 | NA   |
389| packageSize     | long               | 表示app包的大小,单位字节                   |   NA  |
390
391### 4.2 PackInfo结构体信息
392
393| 字段                | 类型          | 描述                                    | 备注 |
394| ------------------- | ------------- | --------------------------------------- | ---- |
395| name                | String        | 包名                                    | NA   |
396| moduleName          | String        | Hap名称                                 | NA   |
397| moduleType          | String        | module的类型                            | NA   |
398| deviceType          | List\<String> | 表示当前hap包所支持的设备类型           | NA   |
399| deliveryWithInstall | boolean       | 标识当前hap是否在用户主动安装的时候安装 | NA   |
400
401### 4.3 ProfileInfo结构体信息
402
403| 字段         | 类型                           | 描述                                       | 备注                                                         |
404| ------------ | ------------------------------ | ------------------------------------------ | ------------------------------------------------------------ |
405| hapName      | String                         | 标识当前解析的hap包名称                    | NA                                                           |
406| appInfo      | AppInfo结构体(见下述AppInfo) | 标识APP信息的结构体(见下述AppInfo信息)   | NA                                                           |
407| deviceConfig | Map\<String,DeviceConfig>      | 标识设备信息                               | 存储类型为Map\<String,String>,存储设备类型名称及对应设备类型的信息,在stage模型中,这个字段存储在app结构体中 |
408| hapInfo      | HapInfo结构体(见下述HapInfo) | 标识hap包中module信息(见下述HapInfo信息) | NA                                                           |
409
410### 4.4 AppInfo结构体信息
411
412| 字段                             | 类型      | 描述                                                                          | 备注          |
413|--------------------------------|---------|-----------------------------------------------------------------------------|-------------|
414| bundleName                     | String  | 标识app的包名称                                                                   | NA          |
415| vendor                         | String  | 标识app的供应商信息                                                                 | NA          |
416| relatedBundleName              | String  | 标识app相关bundle的包名                                                            | NA          |
417| versionName                    | String  | 标识app中的versionName信息                                                        | NA          |
418| versionCode                    | String  | 标识app中的versionCode信息                                                        | NA          |
419| targetApiVersion               | int     | 标识应用运行需要的API目标版本                                                            | NA          |
420| compatibleApiVersion           | int     | 标识应用兼容的API版本                                                                | NA          |
421| appName                        | String  | 标识显示在桌面上的ability的label                                                      | NA          |
422| appNameEN                      | String  | 标识显示在桌面上的ability的label                                                      | NA          |
423| releaseType                    | String  | 标识应用运行需要的API目标版本的类型                                                         | NA          |
424| shellVersionCode               | String  | 标识HarmonyOS中的API版本                                                          | NA          |
425| shellVersionName               | String  | 标识HarmonyOS中的API版本名称                                                        | NA          |
426| multiFrameworkBundle           | String  | 标识bundleName                                                                | NA          |
427| debug                          | boolean | 标识应用是否可调试                                                                   | NA          |
428| icon                           | String  | 标识应用的图标路径                                                                   | NA          |
429| label                          | String  | 标识应用的label                                                                  | NA          |
430| description                    | String  | 标识应用的描述信息                                                                   | stage模型新增   |
431| minCompatibleVersionCode       | int     | 标识应用能够兼容的最低版本号                                                              | NA          |
432| distributedNotificationEnabled | boolean | 标记该应用是否开启分布式通知                                                              | stage模型新增   |
433| bundleType                     | String  | 标识bundle的类型,取值:<br/>- app:普通应用<br/>- atomicService:元服务 <br/>- shared:应用间共享库 | NA   |
434| compileSdkVersion              | String  | 标识编译该应用时使用的sdk版本                                                            | stage模型新增   |
435| compileSdkType                 | String  | 标识编译该应用时使用的sdk类别                                                            | stage模型新增   |
436| labels                         | HashMap\<String, String> | 标识多语言应用程序AppJson的标签。                                                        | NA          |
437| descriptions                   | HashMap\<String, String> | 标识多语言应用程序AppJson的说明。                                                        | NA          |
438
439### 4.5 HapInfo结构体信息
440
441| 字段                 | 类型                                          | 描述                               | 备注                                   |
442| ---------------------|-----------------------------------------------|------------------------------------| ---------------------------------------|
443| appModel             | AppModel枚举值                                | 标识应用的框架模型<br/>- FA:FA模型<br/>- STAGE:Stage模型 | NA |
444| packageStr           | String                                        | 标识应用的包信息                    | FA模型特有             |
445| name                 | String                                        | 标识当前module的名字                | NA                 |
446| description          | String                                        | 标识hap包的描述信息                 | FA模型特有                       |
447| supportedModes       | List\<String>                                 | 标识hap包的支持的模式               | NA                           |
448| abilities            | List\<AbilityInfo>                            | 标识hap包ability信息                | NA                             |
449| defPermissions       | List\<DefPermission>                          | 标识hap包DefPermission信息          | NA                             |
450| definePermissions    | List\<DefinePermission>                       | 标识hap包DefinePermission信息       | NA                             |
451| defPermissionsGroups | List\<DefPermissionsGroups>                   | 标识hap包DefPermissionsGroups 信息  | NA                             |
452| distro               | Distro结构体                                 | 标识hap包的distro信息               | NA                             |
453| reqCapabilities      | List\<String>                                 | 标识hap包reqCapabilities信息        | NA                           |
454| deviceType           | List\<String>                                 | 标识hap可以运行在哪类设备上         | 对应stage模型中的deviceTypes       |
455| metaData             | MetaData结构体(见下述metaData)              | 标识hap的自定义元信息                | NA           |
456| dependencies         | List\<DependencyItem>                         | 标识hap包DependencyItem信息         | NA                             |
457| isJs                 | boolean                                       | 标识该应用是否是js应用              | FA模型特有            |
458| reqPermissions       | list\<ReqPermission>                          | 标识应用申请的权限的集合             | 对应stage模型的requestPermissions |
459| commonEvents         | CommonEvent结构体(见下述CommentEvent)       | 标识静态事件                         | NA     |
460| shortcuts            | list\<Shortcut>                               | 标识应用的shortcuts信息              | NA                  |
461| distroFilter         | DistroFilter结构体                            | 标识应用市场按设备形态分发的信息     | NA               |
462| srcEntrance          | String                                        | 标识应用对应的入口代码路径           | stage模型新增          |
463| process              | String                                        | 标识hap的进程名                      | stage模型新增       |
464| mainElement          | String                  | 标识hap的入口ability名称或者extension名称 | stage模型新增,FA模型将mainAbility的值赋值给mainElement |
465| uiSyntax             | String                                        | 定义该ETS Component的语法类型         | stage模型新增       |
466| pages                | List\<String>                                 | 列举ETS Component中每个页面信息       | stage模型新增       |
467| extensionAbilityInfos| List\<ExtensionAbilityInfo>                   | 描述extensionAbility的配置信息       | stage模型新增        |
468| moduleAtomicService  | ModuleAtomicService结构体(见下述ModuleAtomicService) | 描述hap的元服务信息          | NA              |
469| formInfos            | List\<AbilityFormInfo>                        | 描述卡片的信息                       | NA              |
470| descriptions         | HashMap\<String, String>                      | 标识hap的说明信息                    | NA             |
471| compressedSize       | long                                          | 标识Hap包压缩后的大小,单位字节         | NA             |
472| originalSize         | long                                          | 标识Hap包的原始大小,单位字节         | NA             |
473
474### 4.6 AbilityInfo结构体信息
475
476| 字段                | 类型                       | 描述                                              | 备注                        |
477|-------------------|--------------------------| ------------------------------------------------- | ------------------------------- |
478| name              | String                   | 标识当前ability的逻辑名                           | NA                              |
479| description       | String                   | 标识ability的描述                                 | NA                              |
480| descriptionRes    | String                   | 标识ability资源的描述                             | NA                              |
481| icon              | String                   | 标识ability图标                                   | NA                              |
482| iconPath          | String                   | 标识ability图标路径                               | NA                              |
483| label             | String                   | 标识ability对用户显示的名称                       | NA                              |
484| labelRes          | String                   | 标识ability对用户显示的名称资源                   | NA                              |
485| type              | String                   | 标识ability类型                                   | Stage模型下该值直接赋予page类型 |
486| formsEnabled      | boolean                  | 标识ability卡片是否使能                           | NA                              |
487| formInfo          | FormInfo结构体           | 描述卡片的信息                                    | NA                              |
488| uri               | String                   | 标识ability的uri信息                              | FA模型支持                      |
489| launchType        | String                   | 标识ability中的launcherType信息                   | NA                              |
490| orientation       | String                   | 标识ability中的orientation信息                    | NA                              |
491| visible           | boolean                  | 标识ability中的visible信息                        | NA                              |
492| grantPermission   | boolean                  | 标识ability中的grantPermission信息                | NA                              |
493| readPermission    | String                   | 标识ability中的readPermission信息                 | NA                              |
494| writePermission   | String                   | 标识ability中的writePermission信息                | NA                              |
495| uriPermissionMode | String                   | 标识ability中的uriPermissionMode信息              | NA                              |
496| uriPermissionPath | String                   | 标识ability中的uriPermissionPath信息              | NA                              |
497| directLaunch      | boolean                  | 标识ability中的directLaunch信息                   | NA                              |
498| mission           | String                   | 标识ability中的mission信息                        | NA                              |
499| targetAbility     | String                   | 标识ability中的targetAbility信息                  | NA                              |
500| multiUserShared   | boolean                  | 标识ability中的multiUserShared信息                | NA                              |
501| supportPipMode    | boolean                  | 标识ability中的supportPipMode信息                 | NA                              |
502| srcLanguage       | String                   | 标识ability中的srcLanguage信息                    | NA                              |
503| srcPath           | String                   | 标识ability中的srcPath信息                        | NA                              |
504| srcEntrance       | String                   | 标识ability中的srcEntrance信息                    | NA                              |
505| continuable       | boolean                  | 标识ability中的continuable信息                    | NA                              |
506| metaData          | MetaData结构体(见下述MetaData) | 标识ability的自定义元信息                  | NA                             |
507| configChanges     | List\<String>            | 标识ability中的configChanges信息                  | NA                              |
508| formInfos         | List\<AbilityFormInfo>   | 标识ability中的forms信息                          | NA                              |
509| permissions       | List\<String>            | 标识ability中的permissions信息                    | NA                              |
510| skills            | List\<SkillInfo>         | 标识ability中的skills信息                         | NA                              |
511| backgroundModes   | List\<String>            | 标识ability中的backgroundModes信息                | NA                              |
512| labels            | HashMap\<String, String> | 标识多语言下ability对用户显示的名称                | NA                             |
513| descriptions      | HashMap\<String, String> | 标识多语言下ability的描述                         | NA                              |
514
515### 4.7 Distro结构体信息
516
517| 字段                | 类型    | 描述                                    | 备注                                                         |
518| ------------------- |---------| --------------------------------------- | ------------------------------------------------------------ |
519| moduleName          | String  | 标识当前module的名字                    | 对应Stage模型中module结构体中的moduleName字段                 |
520| moduleType          | String  | 标识当前hap的类型                       | 对应Stage模型中module结构体中的moduleType字段                 |
521| deliveryWithInstall | boolean | 标识当前hap是否在用户主动安装的时候安装 | 对应Stage模型中module结构体中的deliveryWithInstall字段         |
522| installationFree    | int     | 标识当前hap是否支持免安装特性           | 对应Stage模型中module结构体中的installationFree字段,json文件中如果配置了该字段为true,返回1,配置为false,返回0,未配置返回2 |
523| virtualMachine      | String  | 标识当前hap运行的目标虚拟机类型,供云端分发使用,如应用市场和分发中心 | 对应Stage模型中module结构体中的virtualMachine字段 |
524
525### 4.8 MetaData结构体信息
526
527| 字段           | 类型                 | 描述                             | 备注                      |
528| -------------- |----------------------| -------------------------------- | ------------------------- |
529| parameters     | List\<MetaDataInfo>  | 标识Metadata的参数信息           | FA模型特有,stage模型废弃  |
530| results        | List\<MetaDataInfo>  | 标识Metadata的results信息        | FA模型特有,stage模型废弃  |
531| customizeDatas | List\<CustomizeData> | 标识Metadata的customizeDatas信息 | NA                         |
532
533### 4.9 MetaDataInfo结构体信息
534
535| 字段        | 类型   | 描述                              | 备注                      |
536| ----------- | ------ | --------------------------------- | ------------------------- |
537| name        | String | 标识MetaDataInfo的name信息        | FA模型特有,stage模型废弃  |
538| description | String | 标识MetaDataInfo的description信息 | FA模型特有,stage模型废弃  |
539| type        | String | 标识MetaDataInfo的type信息        | FA模型特有,stage模型废弃  |
540
541### 4.10 CustomizeData结构体信息
542
543| 字段  | 类型   | 描述                         | 备注                    |
544| ----- | ------ | ---------------------------- | ----------------------- |
545| name  | String | 标识CustomizeData的name信息  | 对应stage模型的metadata |
546| value | String | 标识CustomizeData的value信息 | 对应stage模型的metadata |
547| extra | String | 标识CustomizeData的extra信息 | 对应stage模型的metadata |
548
549### 4.11 ReqPermission结构体信息
550
551| 字段      | 类型                               | 描述                                                       | 备注 |
552| --------- | ---------------------------------- |------------------------------------------------------------| ---- |
553| name      | String                             | 标识ReqPermission的名称信息                                 | NA   |
554| reason    | String                             | 当申请的权限为user_grant权限时此字段必填,描述申请权限的原因 | NA   |
555| usedScene | UsedScene结构体(见下述UsedScene) | 描述权限使用的场景和时机。场景类型有:ability、调用时机(when),可配置多个ability | NA   |
556| reasons   | HashMap\<String, String>           | 当申请的权限为user_grant权限时此字段必填,描述申请权限的原因 | NA    |
557
558### 4.12 UsedScene结构体信息
559
560| 字段    | 类型          | 描述                                                         | 备注 |
561| ------- | ------------- | ------------------------------------------------------------ | ---- |
562| ability | List\<String> | 标识需要使用到该权限的元能力(ability),该标签值为数组形式   | NA   |
563| when    | String        | 标识使用该权限的时机,值为inuse/always,表示为仅允许前台使用和前后台都可使用 | NA   |
564
565### 4.13 Shortcut结构体信息
566
567| 字段       | 类型                   | 描述                                                         | 备注 |
568| ---------- | ---------------------- | :----------------------------------------------------------- | ---- |
569| shortcutId | String                 | 标识ShortCut的Id                                             | NA   |
570| label      | String                 | 标识ShortCut的标签信息                                       | NA   |
571| icon       | String                 | 标识ShortCut的图标信息                                       | NA   |
572| intents    | List\<IntentInfo>      | 标识快捷方式内定义的目标intent信息集合,每个intent可配置两个子标签,targetClass,targetBundle | NA   |
573| labels     | HashMap\<String, String> | 标识多语言下ShortCut对用户显示的名称                        | NA   |
574
575### 4.14 IntentInfo结构体信息
576
577| 字段         | 类型   | 描述             | 备注 |
578| ------------ | ------ | ---------------- | ---- |
579| targetClass  | String | 快捷方式目标类型 | NA   |
580| targetBundle | String | 快捷方式目标包名 | NA   |
581
582### 4.15 DistroFilter结构体信息
583
584| 字段          | 类型                | 描述                                  | 备注 |
585| ------------- | ------------------- | ------------------------------------- | ---- |
586| apiVersion    | ApiVersion结构体    | 标识DistroFilter中的apiVersion信息    | NA   |
587| screenShape   | ScreenShape结构体   | 标识DistroFilter中的screenShape信息   | NA   |
588| screenDensity | ScreenDensity结构体 | 标识DistroFilter中的screenDensity信息 | NA   |
589| screenWindow  | ScreenWindow结构体  | 标识DistroFilter中的screenWindow信息  | NA   |
590| countryCode   | CountryCode结构体   | 标识DistroFilter中的countryCode信息   | NA   |
591
592### 4.16 ApiVersion结构体信息
593
594| 字段   | 类型          | 描述                     | 备注 |
595| ------ | ------------- | ------------------------ | ---- |
596| policy | String        | 标识结构体中的policy信息 | NA   |
597| value  | List\<String> | 标识结构体中的value信息  | NA   |
598
599### 4.17 ScreenShape结构体信息
600
601| 字段   | 类型          | 描述                     | 备注 |
602| ------ | ------------- | ------------------------ | ---- |
603| policy | String        | 标识结构体中的policy信息 | NA   |
604| value  | List\<String> | 标识结构体中的value信息  | NA   |
605
606### 4.18 ScreenDensity结构体信息
607
608| 字段   | 类型          | 描述                     | 备注 |
609| ------ | ------------- | ------------------------ | ---- |
610| policy | String        | 标识结构体中的policy信息 | NA   |
611| value  | List\<String> | 标识结构体中的value信息  | NA   |
612
613### 4.19 ScreenWindow结构体信息
614
615| 字段   | 类型          | 描述                     | 备注 |
616| ------ | ------------- | ------------------------ | ---- |
617| policy | String        | 标识结构体中的policy信息 | NA   |
618| value  | List\<String> | 标识结构体中的value信息  | NA   |
619
620### 4.20 CountryCode结构体信息
621
622| 字段   | 类型          | 描述                     | 备注 |
623| ------ | ------------- | ------------------------ | ---- |
624| policy | String        | 标识结构体中的policy信息 | NA   |
625| value  | List\<String> | 标识结构体中的value信息  | NA   |
626
627### 4.21 ExtensionAbilityInfo结构体信息
628
629| 字段            | 类型                     | 描述                                                  | 备注                                |
630| --------------- | ------------------------ | ----------------------------------------------------- | ----------------------------------- |
631| name            | String                   | 标识当前extensionAbility的逻辑名                      | stage模型支持                      |
632| srcEntrance     | String                   | 标识extensionAbility所对应的js代码路径                | stage模型支持                      |
633| icon            | String                   | 标签标识extensionAbility图标                          | stage模型支持                      |
634| label           | String                   | 标识extensionAbility对用户显示的名称                  | stage模型支持                      |
635| description     | String                   | 标识extensionAbility的描述                            | stage模型支持                      |
636| type            | String                   | 标识extensionAbility的类型:form、workScheduler、inputMethod、service、accessibility、dataShare、fileShare、wallpaper、backup | stage模型支持,目前仅解析了form、staticSubscriber的信息、其他类型(如:workScheduler、inputMethod、service、accessibility、dataShare、fileShare、wallpaper、backup)暂未解析        |
637| permissions     | List\<String>            | 标识被其它应用的ability调用时需要申请的权限的集合       | stage模型支持                      |
638| readPermission  | String                   | 标识读取ability的数据所需的权限                         | stage模型支持                    |
639| writePermission | String                   | 标识向ability写数据所需的权限                           | stage模型支持                   |
640| visible         | boolean                  | 标识extensionAbility是否可以被其它应用调用              | stage模型支持                   |
641| skills          | List\<SkillInfo>         | 标识extensionAbility能够接收的意图的特征集              | stage模型支持                    |
642| metadataInfos   | List\<ModuleMetadataInfo>| 标识extensionAbility能够接收的元数据信息                | stage模型支持                    |
643| metadata        | MetaData结构体           | 标识extensionAbility的元信息                            | 将metadata中的信息赋值到CustomizeData中 |
644| uri             | String                   | 标识extensionAbility提供的数据uri                       | stage模型支持                           |
645| descriptions    | HashMap\<String, String> | 标识多语言下extensionAbility的描述                      | NA                              |
646| labels          | HashMap\<String, String> | 标识多语言下extensionAbility对用户显示的名称            | NA                             |
647
648### 4.22 SkillInfo结构体信息
649
650| 字段     | 类型                | 描述                   | 备注 |
651| -------- | ------------------- |----------------------| ---- |
652| actions  | List\<String>       | 标识能够接收的意图的action值的集合 | NA   |
653| entities | List\<String>       | 标识能够接收的意图的元能力的类别集合   | NA   |
654
655### 4.23 UriInfo结构体信息
656
657| 字段          | 类型   | 描述                     | 备注 |
658| ------------- | ------ |------------------------| ---- |
659| schema        | String | 标识ModuleUriInfo的范式信息   | NA   |
660| host          | String | 标识ModuleUriInfo的宿主信息   | NA   |
661| port          | String | 标识ModuleUriInfo的端口信息   | NA   |
662| pathStartWith | String | 标识ModuleUriInfo的路径前缀   | NA   |
663| pathRegex     | String | 标识ModuleUriInfo的路径正则信息 | NA   |
664| path          | String | 标识ModuleUriInfo的路径信息   | NA   |
665| type          | String | 标识ModuleUriInfo的种类     | NA   |
666
667### 4.24 AbilityFormInfo结构体信息
668
669| 字段                | 类型                     | 描述                                                         | 备注        |
670| ------------------- | -------------------------| ------------------------------------------------------------ |-----------|
671| name                | String                   | 标识forms的名称                                              | NA        |
672| type                | String                   | 标签标识卡片的类型                                           | NA        |
673| updateEnabled       | boolean                  | 标识该卡片是否支持定时刷新                                   | NA        |
674| scheduledUpdateTime | String                   | 标签标识卡片顶点刷新的时间,采用24小时计数,精确到分钟       | NA        |
675| updateDuration      | int                      | 标识卡片定时刷新的更新频率,单位为30分钟,取值为30的倍数值   | NA        |
676| supportDimensions   | List\<String>            | 标识卡片外观规格,取值为”1 * 2“,”2 * 2“,”2 * 4“,”4 * 4“   | NA        |
677| defaultDimension    | String                   | 标识卡片默认外观规格,取值必须在supportDimensions配置的列表中 | NA        |
678| MetaData            | MetaData                 | 标识卡片的自定义信息                                         | NA        |
679| description         | String                   | 标识forms的描述                                              | stage模型新增 |
680| src                 | String                   | 标签JS卡片对应的UI代码                                       | NA        |
681| windowInfo          | ModuleWindowInfo结构体   | 标签能力窗体的窗口。                                       | NA        |
682| isDefault           | boolean                  | 标识该卡片是否为默认卡片,每个hap有且只能有一个默认卡片      | NA        |
683| colorMode           | String                   | 标识卡片的色调,取值为auto、dark、light其中之一              | NA        |
684| formConfigAbility   | String                   | 标识卡片调整的Ability名称                                    | NA        |
685| formVisibleNotify   | String                   | 标识卡片是否被允许使用卡片可见性通知                         | NA        |
686| providerAbility     | String                   | 卡片的提供方所在的Ability或者extension名称,1.FA模型:如果卡片配置在service类型的ability中,providerAbility配置为mainAbility 2.FA模型:如果卡片配置在Page类型的Ability中,providerAbility配置为当前Ability 3.FA模型:如果没有配置mainAbility,providerAbility配置为当前hap包中的优先使用system.home,否则第一个page的Ability 4.stage模型中(follow上述规则),providerAbility配置为mainElement | NA |
687| descriptions        | HashMap\<String, String> | 标识多语言下ability的描述                                     | NA     |
688
689
690
691### 4.25 CommonEvent结构体信息
692
693| 字段       | 类型          | 描述                                   | 备注                                             |
694| ---------- | ------------- | -------------------------------------- | ------------------------------------------------ |
695| name       | String        | 当前静态公共事件对应的类名             | Stage模型从staticSubscriber类型的Extension中获取 |
696| permission | String        | 标识实现该静态公共事件需要申请的权限   | Stage模型从staticSubscriber类型的Extension中获取 |
697| data       | List\<String> | 当前静态公共时间需要携带的额外数据数组 | Stage模型从staticSubscriber类型的Extension中获取 |
698| type       | List\<String> | 配置当前静态公共时间的类别数组         | Stage模型从staticSubscriber类型的Extension中获取 |
699| events     | List\<String> | 标识能够接收的意图的event值的集合      | Stage模型从staticSubscriber类型的Extension中获取 |
700
701### 4.26 DependencyItem结构体信息
702
703| 字段           | 类型   | 描述           | 备注 |
704|--------------| ------ |--------------| ---- |
705| bundleName   | String | 共享包的bundleName | NA   |
706| moduleName   | String | 共享包的moduleName | NA   |
707| versionCode  | String | 共享包的版本号      | NA   |
708
709### 4.27 ModuleAtomicService结构体信息
710
711| 字段         | 类型                   | 描述           | 备注 |
712|--------------|------------------------|----------------| ---- |
713| preloadItems | list\<PreloadItem>     | 预加载对象     | NA   |
714
715### 4.28 PreloadItem结构体信息
716
717| 字段         | 类型   | 描述           | 备注 |
718|--------------|--------|----------------| ---- |
719| moduleName   | String | 预加载的模块名 | NA   |
720
721### 4.29 DeviceConfig结构体信息
722
723| 字段                           | 类型    | 描述                                     | 备注 |
724|--------------------------------|-------- |------------------------------------------| ---- |
725| targetReqSdk                   | String  | 标识应用程序DeviceConfig的目标请求Sdk版本  | NA   |
726| compatibleReqSdk               | String  | 标识应用程序DeviceConfig的兼容请求Sdk版本  | NA   |
727| jointUserid                    | String  | 标识应用程序DeviceConfig的jointUserid      | NA   |
728| process                        | String  | 标识应用程序DeviceConfig的进程             | NA   |
729| arkFlag                        | String  | 标识应用程序DeviceConfig的arkFlag          | NA   |
730| targetArkVersion               | String  | 标识应用程序DeviceConfig的targetArkVersion | NA   |
731| compatibleArkVersion           | String  | 标识应用程序DeviceConfig的兼容ArkVersion   | NA   |
732| directLaunch                   | boolean | 标识应用程序DeviceConfig的直接启动         | NA   |
733| distributedNotificationEnabled | boolean | 标识应用程序AppJson的distributedNotificationEnabled | NA   |
734
735### 4.30 DefPermission结构体信息
736
737| 字段           | 类型                     | 描述                                      | 备注 |
738|----------------|--------------------------|-------------------------------------------| ---- |
739| name           | String                   | 标识指示DefPermission的名称               | NA   |
740| grantMode      | String                   | 标识DefPermission的grantMode              | NA   |
741| group          | String                   | 标识DefPermission的组                     | NA   |
742| label          | String                   | 标识DefPermission的标签                   | NA   |
743| description    | String                   | 标识DefPermission的描述                   | NA   |
744| availableScope | List\<String>            | 标识DefPermission的可用范围               | NA   |
745| labels         | HashMap\<String, String> | 标识多语言应用程序DefPermission的标签     | NA   |
746| descriptions   | HashMap\<String, String> | 标识多语言应用程序DefPermission的说明     | NA   |
747
748### 4.31 DefinePermission结构体信息
749
750| 字段                   | 类型                     | 描述                                               | 备注 |
751|------------------------|--------------------------|----------------------------------------------------| ---- |
752| name                   | String                   | 标识DefPermission的名称                         | NA   |
753| grantMode              | String                   | 标识DefPermission的grantMode                        | NA   |
754| availableLevel         | String                   | 标识DefPermission的组                               | NA   |
755| provisionEnable        | boolean                  | 标识模块定义权限的提供启用                           | NA   |
756| distributedSceneEnable | boolean                  | 标识ModuleDefinePermissions的distributedSceneEnable | NA   |
757| label                  | String                   | 标识DefPermission的标签                              | NA   |
758| description            | String                   | 标识DefPermission的描述                              | NA   |
759| descriptions           | HashMap\<String, String> | 标识多语言应用程序DefPermission的说明                | NA   |
760| labels                 | HashMap\<String, String> | 标识多语言应用程序DefPermission的标签                | NA   |
761
762### 4.32 DefPermissionsGroups结构体信息
763
764| 字段        | 类型    | 描述                         | 备注 |
765|-------------|---------|------------------------------| ---- |
766| name        | String  | 标识DefPermissionGroup的名称 | NA   |
767| order       | String  | 标识DefPermissionGrou的顺序  | NA   |
768| icon        | String  | 标识DefPermissionGroup的图标 | NA   |
769| label       | String  | 标识DefPermissionGroup的标签 | NA   |
770| description | String  | 标识DefPermissionGroup的描述 | NA   |
771| request     | boolean | 标识DefPermissionGroup的请求 | NA   |
772
773### 4.33 FormInfo结构体信息
774
775| 字段          | 类型          | 描述                     | 备注 |
776|---------------|---------------|--------------------------| ---- |
777| formEntity    | List\<String> | 标识formInfo的formEntity | NA   |
778| minHeight     | String        | 标识formInfo的最小高度   | NA   |
779| defaultHeight | String        | 标识formInfo的默认高度   | NA   |
780| minWidth      | String        | 标识formInfo的最小宽度   | NA   |
781| defaultWidth  | String        | 标识formInfo的默认宽度   | NA   |
782
783### 4.34 ModuleMetadataInfo结构体信息
784
785| 字段     | 类型    | 描述                         | 备注 |
786|----------|---------|------------------------------| ---- |
787| name     | String  | 标识ModuleMetadataInfo的名称 | NA   |
788| value    | String  | 标识ModuleMetadataInfo的值   | NA   |
789| resource | String  | 标识ModuleMetadataInfo的资源 | NA   |
790
791### 4.35 ModuleWindowInfo结构体信息
792
793| 字段            | 类型    | 描述                                | 备注 |
794|-----------------|---------|-------------------------------------| ---- |
795| designWidth     | int     | 标识模块已用场景的设计宽度           | NA   |
796| autoDesignWidth | boolean | 标识ModuleUsedScene的autoDesignWidth | NA   |