1# 拆包工具 2 3 4拆包工具是OpenHarmony提供的一种调测工具,支持通过命令行方式将hap、har、hsp、app等文件解压成文件夹,并且提供Java接口对hap、app、hsp等文件进行解析。 5 6 7拆包所用的app_unpacking_tool.jar,可以在本地下载的OpenHarmony的SDK库中找到。 8 9 10## 拆包指令说明 11 12### hap包模式拆包指令 13 14开发者可以使用拆包工具的jar包对应用进行拆包,通过传入拆包选项、文件路径,将hap包解压出来。 15 16#### 示例 17 18``` 19java -jar app_unpacking_tool.jar --mode <option> --hap-path <options> --out-path [option] --force [option] 20``` 21 22#### 参数含义及规范 23 24| 指令 | 是否必选项 | 选项 | 描述 | 25| ---------- | ---------- | ------------- | ------------------------------------------------------------ | 26| --mode | 是 | hap | 拆包类型。 | 27| --hap-path | 是 | NA | hap包路径。 | 28| --rpcid | 否 | true或者false | 是否单独将rpcid文件从hap包中提取到指定目录,如果为true,将仅提取rpcid文件,不对hap包进行拆包。 | 29| --out-path | 是 | NA | 拆包目标文件路径。 | 30| --force | 否 | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 | 31 32### har包模式拆包指令 33 34开发者可以使用拆包工具的jar包对应用进行拆包,通过传入拆包选项、文件路径,将har包解压出来。 35 36#### 示例 37 38``` 39java -jar app_unpacking_tool.jar --mode <options> --har-path <option> --out-path [option] --force [option] 40``` 41 42#### 参数含义及规范 43 44| 指令 | 是否必选项 | 选项 | 描述 | 45| ---------- | ---------- |-------------| ----------------------------------------------------------- | 46| --mode | 是 | har | 拆包类型。 | 47| --har-path | 是 | NA | har包路径。 | 48| --out-path | 是 | NA | 拆包目标文件路径。 | 49| --force | 否 | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 | 50 51### app包模式拆包指令 52 53开发者可以使用拆包工具的jar包对应用进行拆包,通过传入拆包选项、文件路径,将app包解压出来。 54 55#### 示例 56 57``` 58java -jar app_unpacking_tool.jar --mode <options> --app-path <option> --out-path [option] --force [option] 59``` 60 61#### 参数含义及规范 62 63| 指令 | 是否必选项 | 选项 | 描述 | 64| ---------- | ---------- |-------------| ----------------------------------------------------------- | 65| --mode | 是 | app | 拆包类型。 | 66| --app-path | 是 | NA | app包路径。 | 67| --out-path | 是 | NA | 拆包目标文件路径。 | 68| --force | 否 | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 | 69 70### 从hap包中获取rpcid文件 71 72开发者可以使用拆包工具的jar包对应用进行拆包,通过传入拆包选项、文件路径,获取应用的rpcid。 73 74#### 示例 75 76``` 77java -jar app_unpacking_tool.jar --mode hap --rpcid true --hap-path <option> --out-path <option> --force true 78``` 79 80#### 参数含义及规范 81 82| 指令 | 是否必选项 | 选项 | 描述 | 83| ---------- | ---------- | ------------- | ------------------------------------------------------------ | 84| --mode | 是 | hap | 拆包类型 | 85| --rpcid | 否 | true或者false | 是否单独将rpcid文件从hap包中提取到指定目录,如果为true,将仅提取rpcid文件,不对hap包进行拆包。 | 86| --hap-path | 是 | NA | hap包路径 | 87| --out-path | 是 | NA | 拆包rpcid目标文件路径 | 88| --force | 否 | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 | 89 90### hsp包模式拆包指令 91 92开发者可以使用拆包工具的jar包对应用进行拆包,通过传入拆包选项、文件路径,将hsp包解压出来。 93 94#### 示例 95 96``` 97java -jar app_unpacking_tool.jar --mode <option> --hsp-path <options> --out-path [option] --force [option] 98``` 99 100#### 参数含义及规范 101 102| 指令 | 是否必选项 | 选项 | 描述 | 103|------------| ---------- | ------------- |------------------------------------| 104| --mode | 是 | hsp | 拆包类型。 | 105| --hsp-path | 是 | NA | hsp包路径。 | 106| --out-path | 是 | NA | 拆包目标文件路径。 | 107| --force | 否 | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 | 108 109### appqf模式拆包指令 110 111开发者可以使用拆包工具的jar包对应用进行拆包,通过传入拆包选项、文件路径,将appqf包解压出来。 112 113#### 示例 114 115``` 116java -jar app_unpacking_tool.jar --mode <option> --appqf-path <options> --out-path [option] --force [option] 117``` 118 119#### 参数含义及规范 120 121| 指令 | 是否必选项 | 选项 | 描述 | 122|--------------| ---------- |-------------|------------------------------------| 123| --mode | 是 | appqf | 拆包类型。 | 124| --appqf-path | 是 | NA | appqf包路径。 | 125| --out-path | 是 | NA | 拆包目标文件路径。 | 126| --force | 否 | true或者false | 默认值为false,如果为true,表示当目标文件存在时,强制删除。 | 127 128## 包解析接口 129 130包解析接口用于对打好的hap、app、hsp等包等进行解析,获取其中的配置文件等信息。 131 132### 接口目录 133 134| 类名 | 接口原型 | 类型 | 接口详细描述 | 135| ------------------ | ------------------------------------------------------------ | -------- |-------------------------------------------------------------------| 136| UncompressEntrance | UncompressResult parseApp(String appPath,String parseMode,String deviceType,String hapName) | Java接口 | 接口功能:根据参数解析app包的pack.info信息 输入参数:app包路径,解析参数 返回值:UncompressResult | 137| UncompressEntrance | UncompressResult parseApp(InputStream input,String parseMode,String deviceType,String hapName,String outPath) | Java接口 | 接口功能:根据参数解析app包的pack.info信息 输入参数:app文件流,解析参数 返回值:UncompressResult | 138| UncompressEntrance | UncompressResult parseHap(String hapPath) | Java接口 | 接口功能:根据参数解析app包的json配置文件 输入参数:hap包路径,解析参数 返回值:UncompressResult | 139| UncompressEntrance | UncompressResult parseHap(InputStream input) | Java接口 | 接口功能:根据参数解析app包的json配置文件 输入参数:hap包文件流,解析参数 返回值:UncompressResult | 140 141## 拆包工具信息字段 142 143### UncompressResult(Bundle信息)结构体信息 144 145| 字段 | 类型 | 描述 | 备注 | 146| ----------------| ------------------ |----------------------------------------| ---- | 147| result | boolean | 标识此次解析是否成功 | NA | 148| message | String | 解析失败时返回失败原因 | NA | 149| packInfos | List\<PackInfo> | bundle中pack.info文件的packages信息 | NA | 150| profileInfos | List\<profileInfo> | 应用的配置信息 | NA | 151| profileInfosStr | List\<String> | 应用的配置信息 | NA | 152| icon | String | 返回入口组件的icon路径,如果没有入口组件,则返回第一个组件的icon信息 | NA | 153| label | String | 返回入口组件的label,如果没有入口组件,则返回第一个组件的label信息 | NA | 154 155### PackInfo结构体信息 156 157| 字段 | 类型 | 描述 | 备注 | 158| ------------------- | ------------- | --------------------------------------- | ---- | 159| name | String | 包名 | NA | 160| moduleName | String | Hap名称 | NA | 161| moduleType | String | module的类型 | NA | 162| deviceType | List\<String> | 表示当前hap包所支持的设备类型 | NA | 163| deliveryWithInstall | boolean | 标识当前hap是否在用户主动安装的时候安装 | NA | 164 165### ProfileInfo结构体信息 166 167| 字段 | 类型 | 描述 | 备注 | 168| ------------ | ------------------------------ | ------------------------------------------ | ------------------------------------------------------------ | 169| hapName | String | 标识当前解析的hap包名称 | NA | 170| appInfo | AppInfo结构体(见下述AppInfo) | 标识APP信息的结构体(见下述AppInfo信息) | NA | 171| deviceConfig | Map\<String,DeviceConfig> | 标识设备信息 | 存储类型为Map\<String,String>,存储设备类型名称及对应设备类型的信息,在stage模型中,这个字段存储在app结构体中 | 172| hapInfo | HapInfo结构体(见下述HapInfo) | 标识hap包中module信息(见下述HapInfo信息) | NA | 173 174### AppInfo结构体信息 175 176| 字段 | 类型 | 描述 | 备注 | 177|--------------------------------|---------|-------------------------------------------------------------------------------|-------------| 178| bundleName | String | 标识app的包名称 | NA | 179| vendor | String | 标识app的供应商信息 | NA | 180| relatedBundleName | String | 标识app相关bundle的包名 | NA | 181| versionName | String | 标识app中的versionName信息 | NA | 182| versionCode | String | 标识app中的versionCode信息 | NA | 183| targetApiVersion | int | 标识应用运行需要的API目标版本 | NA | 184| compatibleApiVersion | int | 标识应用兼容的API版本 | NA | 185| appName | String | 标识显示在桌面上的ability的label | NA | 186| appNameEN | String | 标识显示在桌面上的ability的label | NA | 187| releaseType | String | 标识应用运行需要的API目标版本的类型 | NA | 188| shellVersionCode | String | 标识应用的API版本号 | NA | 189| shellVersionName | String | 标识应用的API版本名称 | NA | 190| multiFrameworkBundle | boolean | 标识应用框架 | NA | 191| debug | boolean | 标识应用是否可调试 | NA | 192| icon | String | 标识应用的图标路径 | NA | 193| label | String | 标识应用的label | NA | 194| description | String | 标识应用的描述信息 | stage模型新增 | 195| minCompatibleVersionCode | int | 标识应用能够兼容的最低版本号 | NA | 196| distributedNotificationEnabled | boolean | 标记该应用是否开启分布式通知 | stage模型新增 | 197| bundleType | String | 标识bundle的类型,取值:<br/>- app:应用<br/>- atomicService:元服务 <br/>- shared:应用间共享库 | NA | 198| compileSdkVersion | String | 标识编译该应用时使用的sdk版本 | 仅限API10及以后的应用 | 199| compileSdkType | String | 标识编译该应用时使用的sdk类别 | 仅限API10及以后的应用 | 200| labels | HashMap\<String, String> | 标识多语言应用程序AppJson的标签。 | NA | 201| descriptions | HashMap\<String, String> | 标识多语言应用程序AppJson的说明。 | NA | 202 203### HapInfo结构体信息 204 205| 字段 | 类型 | 描述 | 备注 | 206| ---------------------|-----------------------------------------------|------------------------------------| ---------------------------------------| 207| appModel | AppModel枚举值 | 标识应用的框架模型<br/>- FA:FA模型<br/>- STAGE:Stage模型 | NA | 208| packageStr | String | 标识应用的包信息 | FA模型特有 | 209| name | String | 标识当前module的名字 | NA | 210| description | String | 标识hap包的描述信息 | FA模型特有 | 211| supportedModes | List\<String> | 标识hap包的支持的模式 | NA | 212| abilities | List\<AbilityInfo> | 标识hap包ability信息 | NA | 213| defPermissions | List\<DefPermission> | 标识hap包DefPermission信息 | NA | 214| definePermissions | List\<DefinePermission> | 标识hap包DefinePermission信息 | NA | 215| defPermissionsGroups | List\<DefPermissionsGroups> | 标识hap包DefPermissionsGroups 信息 | NA | 216| distro | Distro结构体 | 标识hap包的distro信息 | NA | 217| reqCapabilities | List\<String> | 标识hap包reqCapabilities信息 | NA | 218| deviceType | List\<String> | 标识hap可以运行在哪类设备上 | 对应stage模型中的deviceTypes | 219| metaData | MetaData结构体(见下述metaData) | 标识hap的自定义元信息 | NA | 220| dependencies | List\<DependencyItem> | 标识hap包DependencyItem信息 | NA | 221| isJs | boolean | 标识该应用是否是js应用 | FA模型特有 | 222| reqPermissions | list\<ReqPermission> | 标识应用申请的权限的集合 | 对应stage模型的requestPermissions | 223| commonEvents | CommonEvent结构体(见下述CommonEvent) | 标识静态事件 | NA | 224| shortcuts | list\<Shortcut> | 标识应用的shortcuts信息 | NA | 225| distroFilter | DistroFilter结构体 | 标识应用市场按设备形态分发的信息 | NA | 226| srcEntrance | String | 标识应用对应的入口代码路径 | stage模型新增 | 227| process | String | 标识hap的进程名 | stage模型新增 | 228| mainElement | String | 标识hap的入口ability名称或者extension名称 | stage模型新增,FA模型将mainAbility的值赋值给mainElement | 229| uiSyntax | String | 定义该JS Component的语法类型 | stage模型新增 | 230| pages | List\<String> | 列举JS Component中每个页面信息 | stage模型新增 | 231| extensionAbilityInfos| List\<ExtensionAbilityInfo> | 描述extensionAbility的配置信息 | stage模型新增 | 232| moduleAtomicService | ModuleAtomicService结构体(见下述ModuleAtomicService) | 描述hap的元服务信息 | NA | 233| formInfos | List\<AbilityFormInfo> | 描述卡片的信息 | NA | 234| descriptions | HashMap\<String, String> | 标识hap的说明信息 | NA | 235 236### AbilityInfo结构体信息 237 238| 字段 | 类型 | 描述 | 备注 | 239|-------------------|--------------------------| ------------------------------------------------- | ------------------------------- | 240| name | String | 标识当前ability的逻辑名 | NA | 241| description | String | 标识ability的描述 | NA | 242| descriptionRes | String | 标识ability资源的描述 | NA | 243| icon | String | 标识ability图标 | NA | 244| iconPath | String | 标识ability图标路径 | NA | 245| label | String | 标识ability对用户显示的名称 | NA | 246| labelRes | String | 标识ability对用户显示的名称资源 | NA | 247| type | String | 标识ability类型 | Stage模型下该值直接赋予page类型 | 248| formsEnabled | boolean | 标识ability卡片是否使能 | NA | 249| formInfo | FormInfo结构体 | 描述卡片的信息 | NA | 250| uri | String | 标识ability的uri信息 | FA模型支持 | 251| launchType | String | 标识ability中的launcherType信息 | NA | 252| orientation | String | 标识ability中的orientation信息 | NA | 253| visible | boolean | 标识ability中的visible信息 | NA | 254| grantPermission | boolean | 标识ability中的grantPermission信息 | NA | 255| readPermission | String | 标识ability中的readPermission信息 | NA | 256| writePermission | String | 标识ability中的writePermission信息 | NA | 257| uriPermissionMode | String | 标识ability中的uriPermissionMode信息 | NA | 258| uriPermissionPath | String | 标识ability中的uriPermissionPath信息 | NA | 259| directLaunch | boolean | 标识ability中的directLaunch信息 | NA | 260| mission | String | 标识ability中的mission信息 | NA | 261| targetAbility | String | 标识ability中的targetAbility信息 | NA | 262| multiUserShared | boolean | 标识ability中的multiUserShared信息 | NA | 263| supportPipMode | boolean | 标识ability中的supportPipMode信息 | NA | 264| srcLanguage | String | 标识ability中的srcLanguage信息 | NA | 265| srcPath | String | 标识ability中的srcPath信息 | NA | 266| srcEntrance | String | 标识ability中的srcEntrance信息 | NA | 267| continuable | boolean | 标识ability中的continuable信息 | NA | 268| metaData | MetaData结构体(见下述MetaData) | 标识ability的自定义元信息 | NA | 269| configChanges | List\<String> | 标识ability中的configChanges信息 | NA | 270| formInfos | List\<AbilityFormInfo> | 标识ability中的forms信息 | NA | 271| permissions | List\<String> | 标识ability中的permissions信息 | NA | 272| skills | List\<SkillInfo> | 标识ability中的skills信息 | NA | 273| backgroundModes | List\<String> | 标识ability中的backgroundModes信息 | NA | 274| labels | HashMap\<String, String> | 标识多语言下ability对用户显示的名称 | NA | 275| descriptions | HashMap\<String, String> | 标识多语言下ability的描述 | NA | 276 277### Distro结构体信息 278 279| 字段 | 类型 | 描述 | 备注 | 280| ------------------- |---------| --------------------------------------- | ------------------------------------------------------------ | 281| moduleName | String | 标识当前module的名字 | 对应Stage模型中module结构体中的moduleName字段 | 282| moduleType | String | 标识当前hap的类型 | 对应Stage模型中module结构体中的moduleType字段 | 283| deliveryWithInstall | boolean | 标识当前hap是否在用户主动安装的时候安装 | 对应Stage模型中module结构体中的deliveryWithInstall字段 | 284| installationFree | int | 标识当前hap是否支持免安装特性 | 对应Stage模型中module结构体中的installationFree字段,json文件中如果配置了该字段为true,返回1,配置为false,返回0,未配置返回2 | 285| virtualMachine | String | 标识当前hap运行的目标虚拟机类型,供云端分发使用,如应用市场和分发中心 | 对应Stage模型中module结构体中的virtualMachine字段 | 286 287### MetaData结构体信息 288 289| 字段 | 类型 | 描述 | 备注 | 290| -------------- |----------------------| -------------------------------- | ------------------------- | 291| parameters | List\<MetaDataInfo> | 标识Metadata的参数信息 | FA模型特有,stage模型废弃 | 292| results | List\<MetaDataInfo> | 标识Metadata的results信息 | FA模型特有,stage模型废弃 | 293| customizeDatas | List\<CustomizeData> | 标识Metadata的customizeDatas信息 | NA | 294 295### MetaDataInfo结构体信息 296 297| 字段 | 类型 | 描述 | 备注 | 298| ----------- | ------ | --------------------------------- | ------------------------- | 299| name | String | 标识MetaDataInfo的name信息 | FA模型特有,stage模型废弃 | 300| description | String | 标识MetaDataInfo的description信息 | FA模型特有,stage模型废弃 | 301| type | String | 标识MetaDataInfo的type信息 | FA模型特有,stage模型废弃 | 302 303### CustomizeData结构体信息 304 305| 字段 | 类型 | 描述 | 备注 | 306| ----- | ------ | ---------------------------- | ----------------------- | 307| name | String | 标识CustomizeData的name信息 | 对应stage模型的metadata | 308| value | String | 标识CustomizeData的value信息 | 对应stage模型的metadata | 309| extra | String | 标识CustomizeData的extra信息 | 对应stage模型的metadata | 310 311### ReqPermission结构体信息 312 313| 字段 | 类型 | 描述 | 备注 | 314| --------- | ---------------------------------- |------------------------------------------------------------| ---- | 315| name | String | 标识ReqPermission的名称信息 | NA | 316| reason | String | 当申请的权限为user_grant权限时此字段必填,描述申请权限的原因 | NA | 317| usedScene | UsedScene结构体(见下述UsedScene) | 描述权限使用的场景和时机。场景类型有:ability、调用时机(when),可配置多个ability | NA | 318| reasons | HashMap\<String, String> | 当申请的权限为user_grant权限时此字段必填,描述申请权限的原因 | NA | 319 320### UsedScene结构体信息 321 322| 字段 | 类型 | 描述 | 备注 | 323| ------- | ------------- | ------------------------------------------------------------ | ---- | 324| ability | List\<String> | 标识需要使用到该权限的元能力(ability),该标签值为数组形式 | NA | 325| when | String | 标识使用该权限的时机,值为inuse/always,表示为仅允许前台使用和前后台都可使用 | NA | 326 327### Shortcut结构体信息 328 329| 字段 | 类型 | 描述 | 备注 | 330| ---------- | ---------------------- | :----------------------------------------------------------- | ---- | 331| shortcutId | String | 标识ShortCut的Id | NA | 332| label | String | 标识ShortCut的标签信息 | NA | 333| icon | String | 标识ShortCut的图标信息 | NA | 334| intents | List\<IntentInfo> | 标识快捷方式内定义的目标intent信息集合,每个intent可配置两个子标签,targetClass,targetBundle | NA | 335| labels | HashMap\<String, String> | 标识多语言下ShortCut对用户显示的名称 | NA | 336 337### IntentInfo结构体信息 338 339| 字段 | 类型 | 描述 | 备注 | 340| ------------ | ------ | ---------------- | ---- | 341| targetClass | String | 快捷方式目标类型 | NA | 342| targetBundle | String | 快捷方式目标包名 | NA | 343 344### DistroFilter结构体信息 345 346| 字段 | 类型 | 描述 | 备注 | 347| ------------- | ------------------- | ------------------------------------- | ---- | 348| apiVersion | ApiVersion结构体 | 标识DistroFilter中的apiVersion信息 | NA | 349| screenShape | ScreenShape结构体 | 标识DistroFilter中的screenShape信息 | NA | 350| screenDensity | ScreenDensity结构体 | 标识DistroFilter中的screenDensity信息 | NA | 351| screenWindow | ScreenWindow结构体 | 标识DistroFilter中的screenWindow信息 | NA | 352| countryCode | CountryCode结构体 | 标识DistroFilter中的countryCode信息 | NA | 353 354### ApiVersion结构体信息 355 356| 字段 | 类型 | 描述 | 备注 | 357| ------ | ------------- | ------------------------ | ---- | 358| policy | String | 标识结构体中的policy信息 | NA | 359| value | List\<String> | 标识结构体中的value信息 | NA | 360 361### ScreenShape结构体信息 362 363| 字段 | 类型 | 描述 | 备注 | 364| ------ | ------------- | ------------------------ | ---- | 365| policy | String | 标识结构体中的policy信息 | NA | 366| value | List\<String> | 标识结构体中的value信息 | NA | 367 368### ScreenDensity结构体信息 369 370| 字段 | 类型 | 描述 | 备注 | 371| ------ | ------------- | ------------------------ | ---- | 372| policy | String | 标识结构体中的policy信息 | NA | 373| value | List\<String> | 标识结构体中的value信息 | NA | 374 375### ScreenWindow结构体信息 376 377| 字段 | 类型 | 描述 | 备注 | 378| ------ | ------------- | ------------------------ | ---- | 379| policy | String | 标识结构体中的policy信息 | NA | 380| value | List\<String> | 标识结构体中的value信息 | NA | 381 382### CountryCode结构体信息 383 384| 字段 | 类型 | 描述 | 备注 | 385| ------ | ------------- | ------------------------ | ---- | 386| policy | String | 标识结构体中的policy信息 | NA | 387| value | List\<String> | 标识结构体中的value信息 | NA | 388 389### ExtensionAbilityInfo结构体信息 390 391| 字段 | 类型 | 描述 | 备注 | 392| --------------- | ------------------------ | ----------------------------------------------------- | ----------------------------------- | 393| name | String | 标识当前extensionAbility的逻辑名 | stage模型支持 | 394| srcEntrance | String | 标识extensionAbility所对应的js代码路径 | stage模型支持 | 395| icon | String | 标签标识extensionAbility图标 | stage模型支持 | 396| label | String | 标识extensionAbility对用户显示的名称 | stage模型支持 | 397| description | String | 标识extensionAbility的描述 | stage模型支持 | 398| type | String | 标识extensionAbility的类型:form、workScheduler、inputMethod、service、accessibility、dataShare、fileShare、wallpaper、backup | stage模型支持,目前仅解析了form、staticSubscriber的信息、其他类型(如:workScheduler、inputMethod、service、accessibility、dataShare、fileShare、wallpaper、backup)暂未解析 | 399| permissions | List\<String> | 标识被其它应用的ability调用时需要申请的权限的集合 | stage模型支持 | 400| readPermission | String | 标识读取ability的数据所需的权限 | stage模型支持 | 401| writePermission | String | 标识向ability写数据所需的权限 | stage模型支持 | 402| visible | boolean | 标识extensionAbility是否可以被其它应用调用 | stage模型支持 | 403| skills | List\<SkillInfo> | 标识extensionAbility能够接收的意图的特征集 | stage模型支持 | 404| metadataInfos | List\<ModuleMetadataInfo>| 标识extensionAbility能够接收的元数据信息 | stage模型支持 | 405| metadata | MetaData结构体 | 标识extensionAbility的元信息 | 将metadata中的信息赋值到CustomizeData中 | 406| uri | String | 标识extensionAbility提供的数据uri | stage模型支持 | 407| descriptions | HashMap\<String, String> | 标识多语言下extensionAbility的描述 | NA | 408| labels | HashMap\<String, String> | 标识多语言下extensionAbility对用户显示的名称 | NA | 409 410### SkillInfo结构体信息 411 412| 字段 | 类型 | 描述 | 备注 | 413| -------- | ------------------- |----------------------| ---- | 414| actions | List\<String> | 标识能够接收的意图的action值的集合 | NA | 415| entities | List\<String> | 标识能够接收的意图的元能力的类别集合 | NA | 416 417### UriInfo结构体信息 418 419| 字段 | 类型 | 描述 | 备注 | 420| ------------- | ------ |------------------------| ---- | 421| schema | String | 标识ModuleUriInfo的范式信息 | NA | 422| host | String | 标识ModuleUriInfo的宿主信息 | NA | 423| port | String | 标识ModuleUriInfo的端口信息 | NA | 424| pathStartWith | String | 标识ModuleUriInfo的路径前缀 | NA | 425| pathRegex | String | 标识ModuleUriInfo的路径正则信息 | NA | 426| path | String | 标识ModuleUriInfo的路径信息 | NA | 427| type | String | 标识ModuleUriInfo的种类 | NA | 428 429### AbilityFormInfo结构体信息 430 431| 字段 | 类型 | 描述 | 备注 | 432| ------------------- | -------------------------| ------------------------------------------------------------ |-----------| 433| name | String | 标识forms的名称 | NA | 434| type | String | 标签标识卡片的类型 | NA | 435| updateEnabled | boolean | 标识该卡片是否支持定时刷新 | NA | 436| scheduledUpdateTime | String | 标签标识卡片顶点刷新的时间,采用24小时计数,精确到分钟 | NA | 437| updateDuration | int | 标识卡片定时刷新的更新频率,单位为30分钟,取值为30的倍数值 | NA | 438| supportDimensions | List\<String> | 标识卡片外观规格,取值为”1 * 2“,”2 * 2“,”2 * 4“,”4 * 4“ | NA | 439| defaultDimension | String | 标识卡片默认外观规格,取值必须在supportDimensions配置的列表中 | NA | 440| MetaData | MetaData | 标识卡片的自定义信息 | NA | 441| description | String | 标识forms的描述 | stage模型新增 | 442| src | String | 标签JS卡片对应的UI代码 | NA | 443| windowInfo | ModuleWindowInfo结构体 | 标签能力窗体的窗口。 | NA | 444| isDefault | boolean | 标识该卡片是否为默认卡片,每个hap有且只能有一个默认卡片 | NA | 445| colorMode | String | 标识卡片的色调,取值为auto、dark、light其中之一 | NA | 446| formConfigAbility | String | 标识卡片调整的Ability名称 | NA | 447| formVisibleNotify | String | 标识卡片是否被允许使用卡片可见性通知 | NA | 448| 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 | 449| descriptions | HashMap\<String, String> | 标识多语言下ability的描述 | NA | 450 451 452### CommonEvent结构体信息 453 454| 字段 | 类型 | 描述 | 备注 | 455| ---------- | ------------- | -------------------------------------- | ------------------------------------------------ | 456| name | String | 当前静态公共事件对应的类名 | Stage模型从staticSubscriber类型的Extension中获取 | 457| permission | String | 标识实现该静态公共事件需要申请的权限 | Stage模型从staticSubscriber类型的Extension中获取 | 458| data | List\<String> | 当前静态公共时间需要携带的额外数据数组 | Stage模型从staticSubscriber类型的Extension中获取 | 459| type | List\<String> | 配置当前静态公共时间的类别数组 | Stage模型从staticSubscriber类型的Extension中获取 | 460| events | List\<String> | 标识能够接收的意图的event值的集合 | Stage模型从staticSubscriber类型的Extension中获取 | 461 462### DependencyItem结构体信息 463 464| 字段 | 类型 | 描述 | 备注 | 465|--------------| ------ |--------------| ---- | 466| bundleName | String | 共享包的bundleName | NA | 467| moduleName | String | 共享包的moduleName | NA | 468| versionCode | String | 共享包的版本号 | NA | 469 470### ModuleAtomicService结构体信息 471 472| 字段 | 类型 | 描述 | 备注 | 473|--------------|------------------------|----------------| ---- | 474| preloadItems | list\<PreloadItem> | 预加载对象 | NA | 475 476### PreloadItem结构体信息 477 478| 字段 | 类型 | 描述 | 备注 | 479|--------------|--------|----------------| ---- | 480| moduleName | String | 预加载的模块名 | NA | 481 482### DeviceConfig结构体信息 483 484| 字段 | 类型 | 描述 | 备注 | 485|--------------------------------|-------- |------------------------------------------| ---- | 486| targetReqSdk | String | 标识应用程序DeviceConfig的目标请求Sdk版本 | NA | 487| compatibleReqSdk | String | 标识应用程序DeviceConfig的兼容请求Sdk版本 | NA | 488| jointUserid | String | 标识应用程序DeviceConfig的jointUserid | NA | 489| process | String | 标识应用程序DeviceConfig的进程 | NA | 490| arkFlag | String | 标识应用程序DeviceConfig的arkFlag | NA | 491| targetArkVersion | String | 标识应用程序DeviceConfig的targetArkVersion | NA | 492| compatibleArkVersion | String | 标识应用程序DeviceConfig的兼容ArkVersion | NA | 493| directLaunch | boolean | 标识应用程序DeviceConfig的直接启动 | NA | 494| distributedNotificationEnabled | boolean | 标识应用程序AppJson的distributedNotificationEnabled | NA | 495 496### DefPermission结构体信息 497 498| 字段 | 类型 | 描述 | 备注 | 499|----------------|--------------------------|-------------------------------------------| ---- | 500| name | String | 标识指示DefPermission的名称 | NA | 501| grantMode | String | 标识DefPermission的grantMode | NA | 502| group | String | 标识DefPermission的组 | NA | 503| label | String | 标识DefPermission的标签 | NA | 504| description | String | 标识DefPermission的描述 | NA | 505| availableScope | List\<String> | 标识DefPermission的可用范围 | NA | 506| labels | HashMap\<String, String> | 标识多语言应用程序DefPermission的标签 | NA | 507| descriptions | HashMap\<String, String> | 标识多语言应用程序DefPermission的说明 | NA | 508 509### DefinePermission结构体信息 510 511| 字段 | 类型 | 描述 | 备注 | 512|------------------------|--------------------------|----------------------------------------------------| ---- | 513| name | String | 标识DefinePermission的名称 | NA | 514| grantMode | String | 标识DefinePermission的grantMode | NA | 515| availableLevel | String | 标识DefinePermission的组 | NA | 516| provisionEnable | boolean | 标识模块定义权限的提供启用 | NA | 517| distributedSceneEnable | boolean | 标识ModuleDefinePermissions的distributedSceneEnable | NA | 518| label | String | 标识DefinePermission的标签 | NA | 519| description | String | 标识DefinePermission的描述 | NA | 520| descriptions | HashMap\<String, String> | 标识多语言应用程序DefinePermission的说明 | NA | 521| labels | HashMap\<String, String> | 标识多语言应用程序DefinePermission的标签 | NA | 522 523### DefPermissionsGroups结构体信息 524 525| 字段 | 类型 | 描述 | 备注 | 526|-------------|---------|------------------------------| ---- | 527| name | String | 标识DefPermissionGroup的名称 | NA | 528| order | String | 标识DefPermissionGrou的顺序 | NA | 529| icon | String | 标识DefPermissionGroup的图标 | NA | 530| label | String | 标识DefPermissionGroup的标签 | NA | 531| description | String | 标识DefPermissionGroup的描述 | NA | 532| request | boolean | 标识DefPermissionGroup的请求 | NA | 533 534### FormInfo结构体信息 535 536| 字段 | 类型 | 描述 | 备注 | 537|---------------|---------------|--------------------------| ---- | 538| formEntity | List\<String> | 标识formInfo的formEntity | NA | 539| minHeight | String | 标识formInfo的最小高度 | NA | 540| defaultHeight | String | 标识formInfo的默认高度 | NA | 541| minWidth | String | 标识formInfo的最小宽度 | NA | 542| defaultWidth | String | 标识formInfo的默认宽度 | NA | 543 544### ModuleMetadataInfo结构体信息 545 546| 字段 | 类型 | 描述 | 备注 | 547|----------|---------|------------------------------| ---- | 548| name | String | 标识ModuleMetadataInfo的名称 | NA | 549| value | String | 标识ModuleMetadataInfo的值 | NA | 550| resource | String | 标识ModuleMetadataInfo的资源 | NA | 551 552### ModuleWindowInfo结构体信息 553 554| 字段 | 类型 | 描述 | 备注 | 555|-----------------|---------|-------------------------------------| ---- | 556| designWidth | int | 标识模块已用场景的设计宽度 | NA | 557| autoDesignWidth | boolean | 标识ModuleUsedScene的autoDesignWidth | NA |