提交 382e9095 编写于 作者: zyjhandsome's avatar zyjhandsome

HAP包 修改为 HAP

Signed-off-by: zyjhandsome's avatarzyjhandsome <zyjhandsome@126.com>
上级 ec58683b
...@@ -18,7 +18,7 @@ Stage模型的设计,主要是为了开发者更加方便地开发出分布式 ...@@ -18,7 +18,7 @@ Stage模型的设计,主要是为了开发者更加方便地开发出分布式
| 应用组件开发方式 | 类Web的开发方式。 | 面向对象的开发方式。 | | 应用组件开发方式 | 类Web的开发方式。 | 面向对象的开发方式。 |
| 引擎实例 | 每个Ability实例独占一个虚拟机实例。 | 多个Ability实例可以共享同一个虚拟机实例。 | | 引擎实例 | 每个Ability实例独占一个虚拟机实例。 | 多个Ability实例可以共享同一个虚拟机实例。 |
| 进程内对象共享 | 不支持。 | 支持。 | | 进程内对象共享 | 不支持。 | 支持。 |
| 包描述文件 | 使用`config.json`描述HAP包和组件信息,组件必须使用固定的文件名。 | 使用`module.json5`描述HAP包和组件信息,可以指定入口文件名。 | | 包描述文件 | 使用`config.json`描述HAP和组件信息,组件必须使用固定的文件名。 | 使用`module.json5`描述HAP和组件信息,可以指定入口文件名。 |
| 组件 | 提供PageAbility(页面展示),ServiceAbility(服务),DataAbility(数据分享)以及FormAbility(卡片)。 | 提供UIAbility(页面展示)、Extension(基于场景的服务扩展)。 | | 组件 | 提供PageAbility(页面展示),ServiceAbility(服务),DataAbility(数据分享)以及FormAbility(卡片)。 | 提供UIAbility(页面展示)、Extension(基于场景的服务扩展)。 |
除了上述设计上的差异外,对于开发者而言,两种模型的主要区别在于: 除了上述设计上的差异外,对于开发者而言,两种模型的主要区别在于:
......
...@@ -110,7 +110,7 @@ Ability功能如下(Ability类,具体的API详见[接口文档](../reference ...@@ -110,7 +110,7 @@ Ability功能如下(Ability类,具体的API详见[接口文档](../reference
### 获取AbilityStage及Ability的配置信息 ### 获取AbilityStage及Ability的配置信息
AbilityStage类及Ability类均拥有context属性,应用可以通过`this.context`获取Ability实例的上下文,进而获取详细的配置信息。 AbilityStage类及Ability类均拥有context属性,应用可以通过`this.context`获取Ability实例的上下文,进而获取详细的配置信息。
如下示例展示了AbilityStage通过context属性获取包代码路径、HAP名、Ability名称以及系统语言的方法。具体示例代码如下: 如下示例展示了AbilityStage通过context属性获取包代码路径、HAP名、Ability名称以及系统语言的方法。具体示例代码如下:
```ts ```ts
import AbilityStage from "@ohos.application.AbilityStage" import AbilityStage from "@ohos.application.AbilityStage"
...@@ -130,7 +130,7 @@ export default class MyAbilityStage extends AbilityStage { ...@@ -130,7 +130,7 @@ export default class MyAbilityStage extends AbilityStage {
} }
``` ```
如下示例展示了Ability通过context属性获取包代码路径、HAP名、Ability名称以及系统语言的方法。具体示例代码如下: 如下示例展示了Ability通过context属性获取包代码路径、HAP名、Ability名称以及系统语言的方法。具体示例代码如下:
```ts ```ts
import Ability from '@ohos.application.Ability' import Ability from '@ohos.application.Ability'
export default class MainAbility extends Ability { export default class MainAbility extends Ability {
......
...@@ -27,5 +27,5 @@ app.json5中对原先config.json中的[deviceConfig](../quick-start/deviceconfig ...@@ -27,5 +27,5 @@ app.json5中对原先config.json中的[deviceConfig](../quick-start/deviceconfig
| process | 标识应用或者Ability的进程名。如果在deviceConfig标签下配置了process标签,则该应用的所有Ability都运行在这个进程中。如果在abilities标签下也为某个Ability配置了process标签,则该Ability就运行在这个进程中。 | / | Stage模型不支持配置进程名称 | | process | 标识应用或者Ability的进程名。如果在deviceConfig标签下配置了process标签,则该应用的所有Ability都运行在这个进程中。如果在abilities标签下也为某个Ability配置了process标签,则该Ability就运行在这个进程中。 | / | Stage模型不支持配置进程名称 |
| keepAlive | 标识应用是否始终保持运行状态,仅支持系统应用配置,三方应用配置不生效。 | / | Stage模型不支持系统应用模型管控方式变更 | | keepAlive | 标识应用是否始终保持运行状态,仅支持系统应用配置,三方应用配置不生效。 | / | Stage模型不支持系统应用模型管控方式变更 |
| supportBackup | 标识应用是否支持备份和恢复。 | / | Stage模型不支持 | | supportBackup | 标识应用是否支持备份和恢复。 | / | Stage模型不支持 |
| compressNativeLibs | 标识libs库是否以压缩存储的方式打包到HAP包。 | / | Stage模型不支持 | | compressNativeLibs | 标识libs库是否以压缩存储的方式打包到HAP。 | / | Stage模型不支持 |
| network | 标识网络安全性配置。 | / | Stage模型不支持 | | network | 标识网络安全性配置。 | / | Stage模型不支持 |
...@@ -91,7 +91,7 @@ Ability配置中缺少startWindowIcon属性配置,需要在module.json5中abil ...@@ -91,7 +91,7 @@ Ability配置中缺少startWindowIcon属性配置,需要在module.json5中abil
推荐使用方式参考:[Stage模型的Context详细介绍](../application-models/application-context-stage.md) 推荐使用方式参考:[Stage模型的Context详细介绍](../application-models/application-context-stage.md)
## 如何在应用A中去获取应用B的HAP的安装路径 ## 如何在应用A中去获取应用B的HAP的安装路径
适用于:OpenHarmony SDK 3.0以上版本, API9 Stage模型 适用于:OpenHarmony SDK 3.0以上版本, API9 Stage模型
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
执行完命令后重启DevEco Studio。 执行完命令后重启DevEco Studio。
## 用IDE安装HAP到开发板上无法打开 ## 用IDE安装HAP到开发板上无法打开
适用于:OpenHarmony SDK 3.2.5.3版本,API9 Stage模型 适用于:OpenHarmony SDK 3.2.5.3版本,API9 Stage模型
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
## 概览 ## 概览
[短信](https://gitee.com/openharmony/applications_mms/tree/master)是OpenHarmony中预置的系统应用,主要包含信息查看、发送短信、接收短信、短信送达报告、删除短信等功能。在不同类型设备上,短信应用的功能完全相同,故短信应用适合使用[部署模型A](introduction.md#部署模型)(即:不同类型的设备上安装运行相同的HAP包或HAP包组合)。 [短信](https://gitee.com/openharmony/applications_mms/tree/master)是OpenHarmony中预置的系统应用,主要包含信息查看、发送短信、接收短信、短信送达报告、删除短信等功能。在不同类型设备上,短信应用的功能完全相同,故短信应用适合使用[部署模型A](introduction.md#部署模型)(即:不同类型的设备上安装运行相同的HAP或HAP组合)。
本案例中,在会话详情页面利用[方舟开发框架](introduction.md#方舟开发框架)提供的“一多”能力,用一套代码同时适配默认设备和平板。 本案例中,在会话详情页面利用[方舟开发框架](introduction.md#方舟开发框架)提供的“一多”能力,用一套代码同时适配默认设备和平板。
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
短信应用在开发阶段,采用了一层工程结构。由于功能较为简单,所以并没有规划共用的feature和common目录,仅采用了一层product目录。 短信应用在开发阶段,采用了一层工程结构。由于功能较为简单,所以并没有规划共用的feature和common目录,仅采用了一层product目录。
- 业务形态层(product) - 业务形态层(product)
该目录采用IDE工程默认创建的entry目录,开发者可根据需要在创建Module时自行更改该目录名。不同产品形态,编译出相同的短信HAP 该目录采用IDE工程默认创建的entry目录,开发者可根据需要在创建Module时自行更改该目录名。不同产品形态,编译出相同的短信HAP。
......
...@@ -81,7 +81,7 @@ ...@@ -81,7 +81,7 @@
默认设备屏幕尺寸较小,采用standard启动模式不仅无法给用户提供便利,反而可能消耗更多系统资源,故通常采用singleton启动模式。平板屏幕尺寸较大且可能支持自由窗口,对于文档编辑、网页浏览等场景,使用standard启动模式可以提升用户体验。 默认设备屏幕尺寸较小,采用standard启动模式不仅无法给用户提供便利,反而可能消耗更多系统资源,故通常采用singleton启动模式。平板屏幕尺寸较大且可能支持自由窗口,对于文档编辑、网页浏览等场景,使用standard启动模式可以提升用户体验。
本文中将默认设备和平板等归为同一泛类,推荐同一泛类的设备共用HAP,同时本文也介绍了如何通过自适应布局能力和响应式布局能力开发出适配不同设备的页面。这里将补充介绍,如何实现Ability在不同设备上以不同的模式启动。 本文中将默认设备和平板等归为同一泛类,推荐同一泛类的设备共用HAP,同时本文也介绍了如何通过自适应布局能力和响应式布局能力开发出适配不同设备的页面。这里将补充介绍,如何实现Ability在不同设备上以不同的模式启动。
launchType字段配置为specified时,系统会根据AbilityStage的onAcceptWant的返回值确定是否创建新的实例。对于同一个应用,如果key已经存在,则复用该key对应的Ability,如果key不存在则新创建Ability。 launchType字段配置为specified时,系统会根据AbilityStage的onAcceptWant的返回值确定是否创建新的实例。对于同一个应用,如果key已经存在,则复用该key对应的Ability,如果key不存在则新创建Ability。
......
...@@ -37,9 +37,9 @@ ...@@ -37,9 +37,9 @@
### 应用程序包结构 ### 应用程序包结构
OpenHarmony 的应用以APP Pack (Application Package) 形式发布,它是由一个或多个HAP包以及描述每个HAP包属性的pack.info文件组成。 OpenHarmony 的应用以APP Pack (Application Package) 形式发布,它是由一个或多个HAP以及描述每个HAP属性的pack.info文件组成。
HAP是OpenHarmony的安装包,一个HAP在工程目录中对应一个Module,由Module编译而来,可分为entry和feature两种类型的HAP。 HAP是OpenHarmony的安装包,一个HAP在工程目录中对应一个Module,由Module编译而来,可分为entry和feature两种类型的HAP。
- **entry**:应用的主模块包。一个APP中,对于同一设备类型,可以有一个或多个entry类型的HAP,来支持该设备类型中不同规格(如API版本、屏幕规格等)的具体设备。 - **entry**:应用的主模块包。一个APP中,对于同一设备类型,可以有一个或多个entry类型的HAP,来支持该设备类型中不同规格(如API版本、屏幕规格等)的具体设备。
...@@ -48,7 +48,7 @@ HAP包是OpenHarmony的安装包,一个HAP在工程目录中对应一个Module ...@@ -48,7 +48,7 @@ HAP包是OpenHarmony的安装包,一个HAP在工程目录中对应一个Module
![zh-cn_image_0000001266965046](figures/zh-cn_image_0000001266965046.png) ![zh-cn_image_0000001266965046](figures/zh-cn_image_0000001266965046.png)
> **说明:** > **说明:**
> - Module是开发者开发的相对独立的功能模块,由代码、资源、第三方库及应用配置文件组成,属于IDE开发视图的概念。Module分为entry、feature及har三种类型,相应的可以编译生成entry类型的HAP包、feature类型的HAP包,以及har包。 > - Module是开发者开发的相对独立的功能模块,由代码、资源、第三方库及应用配置文件组成,属于IDE开发视图的概念。Module分为entry、feature及har三种类型,相应的可以编译生成entry类型的HAP、feature类型的HAP,以及har包。
> >
> - 如果需要了解应用程序包结构更多详情,可以查看[包结构说明](../../quick-start/application-package-structure-stage.md)。 > - 如果需要了解应用程序包结构更多详情,可以查看[包结构说明](../../quick-start/application-package-structure-stage.md)。
...@@ -81,9 +81,9 @@ OpenHarmony提供了方舟开发框架(简称:ArkUI),提供开发者进 ...@@ -81,9 +81,9 @@ OpenHarmony提供了方舟开发框架(简称:ArkUI),提供开发者进
“一多”有两种部署模型: “一多”有两种部署模型:
- **部署模型A**:不同类型的设备上按照一定的工程结构组织方式,通过一次编译生成**相同**的HAP包(或HAP包组合)。 - **部署模型A**:不同类型的设备上按照一定的工程结构组织方式,通过一次编译生成**相同**的HAP(或HAP组合)。
- **部署模型B**:不同类型的设备上按照一定的工程结构组织方式,通过一次编译生成**不同**的HAP包(或HAP包组合)。 - **部署模型B**:不同类型的设备上按照一定的工程结构组织方式,通过一次编译生成**不同**的HAP(或HAP组合)。
建议开发者从设备类型及应用功能两个维度,结合具体的业务场景,考虑选择哪种部署模型。但不管采用哪种部署模型,都应该采用一次编译。 建议开发者从设备类型及应用功能两个维度,结合具体的业务场景,考虑选择哪种部署模型。但不管采用哪种部署模型,都应该采用一次编译。
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
- 每个OpenHarmony应用可以包含多个.hap文件,一个应用中的.hap文件合在一起称为一个Bundle,而bundleName就是应用的唯一标识(请参见[app.json5配置文件](app-configuration-file.md)中的bundleName标签)。需要特别说明的是:在应用上架到应用市场时,需要把应用包含的所有.hap文件(即Bundle)打包为一个.app后缀的文件用于上架,这个.app文件称为App Pack(Application Package),其中同时包含了描述App Pack属性的pack.info文件;在云端分发和端侧安装时,都是以HAP为单位进行分发和安装的。 - 每个OpenHarmony应用可以包含多个.hap文件,一个应用中的.hap文件合在一起称为一个Bundle,而bundleName就是应用的唯一标识(请参见[app.json5配置文件](app-configuration-file.md)中的bundleName标签)。需要特别说明的是:在应用上架到应用市场时,需要把应用包含的所有.hap文件(即Bundle)打包为一个.app后缀的文件用于上架,这个.app文件称为App Pack(Application Package),其中同时包含了描述App Pack属性的pack.info文件;在云端分发和端侧安装时,都是以HAP为单位进行分发和安装的。
- 打包后的HAP结构包括ets、libs、resources等文件夹和resources.index、module.json、pack.info等文件。 - 打包后的HAP结构包括ets、libs、resources等文件夹和resources.index、module.json、pack.info等文件。
- ets目录用于存放应用代码编译后的字节码文件。 - ets目录用于存放应用代码编译后的字节码文件。
- libs目录用于存放库文件。库文件是OpenHarmony应用依赖的第三方代码(.so二进制文件)。 - libs目录用于存放库文件。库文件是OpenHarmony应用依赖的第三方代码(.so二进制文件)。
- resources目录用于存放应用的资源文件(字符串、图片等),便于开发者使用和维护,详见[资源文件的使用](../key-features/multi-device-app-dev/resource-usage.md) - resources目录用于存放应用的资源文件(字符串、图片等),便于开发者使用和维护,详见[资源文件的使用](../key-features/multi-device-app-dev/resource-usage.md)
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
开发者通过[DevEco Studio](https://developer.harmonyos.com/cn/develop/deveco-studio)工具按照业务的需要创建多个Module,在相应的Module中完成自身业务的开发。 开发者通过[DevEco Studio](https://developer.harmonyos.com/cn/develop/deveco-studio)工具按照业务的需要创建多个Module,在相应的Module中完成自身业务的开发。
## 2. 调试 ## 2. 调试
通过DevEco Studio编译打包,生成单个或者多个HAP包。真机基于HAP包进行安装、卸载调试,调试指南可参考[应用程序包调试方法](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ohos-debugging-and-running-0000001263040487#section10491183521520),其中包括了单HAP与多HAP通过DevEco Studio工具的安装调试方法。 通过DevEco Studio编译打包,生成单个或者多个HAP。真机基于HAP进行安装、卸载调试,调试指南可参考[应用程序包调试方法](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ohos-debugging-and-running-0000001263040487#section10491183521520),其中包括了单HAP与多HAP通过DevEco Studio工具的安装调试方法。
应用程序包也可以通过[hdc_std工具](../../device-dev/subsystems/subsys-toolchain-hdc-guide.md)(可通过OpenHarmony SDK获取,在SDK的toolchains目录下)进行安装、更新与卸载,通过hdc_std安装HAP时,HAP的路径为开发平台上的文件路径,以Windows开发平台为例,命令参考如下: 应用程序包也可以通过[hdc_std工具](../../device-dev/subsystems/subsys-toolchain-hdc-guide.md)(可通过OpenHarmony SDK获取,在SDK的toolchains目录下)进行安装、更新与卸载,通过hdc_std安装HAP时,HAP的路径为开发平台上的文件路径,以Windows开发平台为例,命令参考如下:
``` ```
......
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
- **src &gt; main &gt; ets &gt; MainAbility &gt; pages &gt; index.ets**:pages列表中的第一个页面,即应用的首页入口。 - **src &gt; main &gt; ets &gt; MainAbility &gt; pages &gt; index.ets**:pages列表中的第一个页面,即应用的首页入口。
- **src &gt; main &gt; ets &gt; MainAbility &gt; app.ets**:承载Ability生命周期。 - **src &gt; main &gt; ets &gt; MainAbility &gt; app.ets**:承载Ability生命周期。
- **src &gt; main &gt; resources**:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。关于资源文件,详见[资源文件的分类](resource-categories-and-access.md#资源分类) - **src &gt; main &gt; resources**:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。关于资源文件,详见[资源文件的分类](resource-categories-and-access.md#资源分类)
- **src &gt; main &gt; config.json**:模块配置文件。主要包含HAP的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。具体的配置文件说明,详见[应用配置文件(FA模型)](application-configuration-file-overview-fa.md) - **src &gt; main &gt; config.json**:模块配置文件。主要包含HAP的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。具体的配置文件说明,详见[应用配置文件(FA模型)](application-configuration-file-overview-fa.md)
- **build-profile.json5**:当前的模块信息 、编译信息配置项,包括buildOption、targets配置等。 - **build-profile.json5**:当前的模块信息 、编译信息配置项,包括buildOption、targets配置等。
- **hvigorfile.ts**:模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。 - **hvigorfile.ts**:模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。
......
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
- **src &gt; main &gt; ets &gt; entryability**:应用/服务的入口。 - **src &gt; main &gt; ets &gt; entryability**:应用/服务的入口。
- **src &gt; main &gt; ets &gt; pages**:应用/服务包含的页面。 - **src &gt; main &gt; ets &gt; pages**:应用/服务包含的页面。
- **src &gt; main &gt; resources**:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。关于资源文件,详见[资源文件的分类](resource-categories-and-access.md#资源分类) - **src &gt; main &gt; resources**:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。关于资源文件,详见[资源文件的分类](resource-categories-and-access.md#资源分类)
- **src &gt; main &gt; module.json5**:模块配置文件。主要包含HAP的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。具体的配置文件说明,详见[module.json5配置文件](module-configuration-file.md) - **src &gt; main &gt; module.json5**:模块配置文件。主要包含HAP的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。具体的配置文件说明,详见[module.json5配置文件](module-configuration-file.md)
- **build-profile.json5**:当前的模块信息 、编译信息配置项,包括buildOption、targets配置等。 - **build-profile.json5**:当前的模块信息 、编译信息配置项,包括buildOption、targets配置等。
- **hvigorfile.ts**:模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。 - **hvigorfile.ts**:模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
- **src &gt; main &gt; js &gt; MainAbility &gt; app.js**:承载Ability生命周期。 - **src &gt; main &gt; js &gt; MainAbility &gt; app.js**:承载Ability生命周期。
- **src &gt; main &gt; resources**:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。关于资源文件,详见[资源限定与访问](../ui/js-framework-resource-restriction.md) - **src &gt; main &gt; resources**:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。关于资源文件,详见[资源限定与访问](../ui/js-framework-resource-restriction.md)
- **src &gt; main &gt; config.json**:模块配置文件。主要包含HAP的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。具体的配置文件说明,详见[应用配置文件(FA模型)](application-configuration-file-overview-fa.md) - **src &gt; main &gt; config.json**:模块配置文件。主要包含HAP的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。具体的配置文件说明,详见[应用配置文件(FA模型)](application-configuration-file-overview-fa.md)
- **build-profile.json5**:当前的模块信息 、编译信息配置项,包括buildOption、targets配置等。 - **build-profile.json5**:当前的模块信息 、编译信息配置项,包括buildOption、targets配置等。
- **hvigorfile.ts**:模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。 - **hvigorfile.ts**:模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。
......
# @ohos.app.ability.AbilityStage (AbilityStage) # @ohos.app.ability.AbilityStage (AbilityStage)
AbilityStage是HAP的运行时类。 AbilityStage是HAP的运行时类。
AbilityStage类提供在HAP加载的时候,通知开发者,可以在此进行该HAP的初始化(如资源预加载,线程创建等)能力。 AbilityStage类提供在HAP加载的时候,通知开发者,可以在此进行该HAP的初始化(如资源预加载,线程创建等)能力。
......
# @ohos.application.AbilityStage (AbilityStage) # @ohos.application.AbilityStage (AbilityStage)
AbilityStage是HAP的运行时类。 AbilityStage是HAP的运行时类。
AbilityStage模块提供在HAP加载的时候,通知开发者,可以在此进行该HAP的初始化(如资源预加载,线程创建等)能力。 AbilityStage模块提供在HAP加载的时候,通知开发者,可以在此进行该HAP的初始化(如资源预加载,线程创建等)能力。
......
...@@ -22,7 +22,7 @@ Ability信息,未做特殊说明的属性,均通过[GET_BUNDLE_DEFAULT](js-a ...@@ -22,7 +22,7 @@ Ability信息,未做特殊说明的属性,均通过[GET_BUNDLE_DEFAULT](js-a
| icon | string | 是 | 否 | Ability的图标资源文件索引。 | | icon | string | 是 | 否 | Ability的图标资源文件索引。 |
| descriptionId | number | 是 | 否 | Ability的描述id。 | | descriptionId | number | 是 | 否 | Ability的描述id。 |
| iconId | number | 是 | 否 | Ability的图标id。 | | iconId | number | 是 | 否 | Ability的图标id。 |
| moduleName | string | 是 | 否 | Ability所属的HAP包的名称。 | | moduleName | string | 是 | 否 | Ability所属的HAP的名称。 |
| process | string | 是 | 否 | Ability的进程,如果不设置,默认为包的名称。 | | process | string | 是 | 否 | Ability的进程,如果不设置,默认为包的名称。 |
| targetAbility | string | 是 | 否 | 当前Ability重用的目标Ability。<br />此属性仅可在FA模型下使用。 | | targetAbility | string | 是 | 否 | 当前Ability重用的目标Ability。<br />此属性仅可在FA模型下使用。 |
| backgroundModes | number | 是 | 否 | 表示后台服务的类型。<br />此属性仅可在FA模型下使用。 | | backgroundModes | number | 是 | 否 | 表示后台服务的类型。<br />此属性仅可在FA模型下使用。 |
......
...@@ -12,13 +12,13 @@ ...@@ -12,13 +12,13 @@
**系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework。 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework。
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| --------------------------------- | ------------------------------------------------------------ | ---- | ---- | ------------------------------------------------------------ | | -------------------------------- | ------------------------------------------------------------ | ---- | ---- | ------------------------------------------------------------ |
| name | string | 是 | 否 | 应用包的名称。 | | name | string | 是 | 否 | 应用包的名称。 |
| type | string | 是 | 否 | 应用包类型。 | | type | string | 是 | 否 | 应用包类型。 |
| appId | string | 是 | 否 | 应用包里应用程序的id。 | | appId | string | 是 | 否 | 应用包里应用程序的id。 |
| uid | number | 是 | 否 | 应用包里应用程序的uid。 | | uid | number | 是 | 否 | 应用包里应用程序的uid。 |
| installTime | number | 是 | 否 | HAP包安装时间。 | | installTime | number | 是 | 否 | HAP安装时间。 |
| updateTime | number | 是 | 否 | HAP包更新时间。 | | updateTime | number | 是 | 否 | HAP更新时间。 |
| appInfo | [ApplicationInfo](js-apis-bundle-ApplicationInfo.md) | 是 | 否 | 应用程序的配置信息。 | | appInfo | [ApplicationInfo](js-apis-bundle-ApplicationInfo.md) | 是 | 否 | 应用程序的配置信息。 |
| abilityInfos | Array\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)> | 是 | 否 | Ability的配置信息<br />通过传入GET_BUNDLE_WITH_ABILITIES获取。 | | abilityInfos | Array\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)> | 是 | 否 | Ability的配置信息<br />通过传入GET_BUNDLE_WITH_ABILITIES获取。 |
| reqPermissions | Array\<string> | 是 | 否 | 应用运行时需向系统申请的权限集合<br />通过传入GET_BUNDLE_WITH_REQUESTED_PERMISSION获取。 | | reqPermissions | Array\<string> | 是 | 否 | 应用运行时需向系统申请的权限集合<br />通过传入GET_BUNDLE_WITH_REQUESTED_PERMISSION获取。 |
......
...@@ -12,7 +12,7 @@ Ability信息,系统应用可以通过[getBundleInfo](js-apis-bundleManager.md ...@@ -12,7 +12,7 @@ Ability信息,系统应用可以通过[getBundleInfo](js-apis-bundleManager.md
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| --------------------- | -------------------------------------------------------- | ---- | ---- | ----------------------------------------- | | --------------------- | -------------------------------------------------------- | ---- | ---- | ----------------------------------------- |
| bundleName | string | 是 | 否 | 应用Bundle名称 | | bundleName | string | 是 | 否 | 应用Bundle名称 |
| moduleName | string | 是 | 否 | Ability所属的HAP的名称 | | moduleName | string | 是 | 否 | Ability所属的HAP的名称 |
| name | string | 是 | 否 | Ability名称 | | name | string | 是 | 否 | Ability名称 |
| label | string | 是 | 否 | Ability对用户显示的名称 | | label | string | 是 | 否 | Ability对用户显示的名称 |
| labelId | number | 是 | 否 | Ability的标签资源id | | labelId | number | 是 | 否 | Ability的标签资源id |
......
...@@ -16,4 +16,4 @@ ElementName信息,通过接口[Context.getElementName](js-apis-inner-app-conte ...@@ -16,4 +16,4 @@ ElementName信息,通过接口[Context.getElementName](js-apis-inner-app-conte
| abilityName | string | 是 | 是 | Ability名称。 | | abilityName | string | 是 | 是 | Ability名称。 |
| uri | string | 是 | 是 | 资源标识符。 | | uri | string | 是 | 是 | 资源标识符。 |
| shortName | string | 是 | 是 | Ability短名称。 | | shortName | string | 是 | 是 | Ability短名称。 |
| moduleName | string | 是 | 是 | Ability所属的HAP包的模块名称。 | | moduleName | string | 是 | 是 | Ability所属的HAP的模块名称。 |
\ No newline at end of file \ No newline at end of file
...@@ -10,18 +10,18 @@ ExtensionAbility信息,系统应用可以通过[getBundleInfo](js-apis-bundleM ...@@ -10,18 +10,18 @@ ExtensionAbility信息,系统应用可以通过[getBundleInfo](js-apis-bundleM
**系统能力**: SystemCapability.BundleManager.BundleFramework.Core **系统能力**: SystemCapability.BundleManager.BundleFramework.Core
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| -------------------- | ------------------------------------------------------------ | ---- | ---- | -------------------------------------------------- | | -------------------- | ------------------------------------------------------------ | ---- | ---- | ---------------------------------------------------- |
| bundleName | string | 是 | 否 | 应用Bundle名称 | | bundleName | string | 是 | 否 | 应用Bundle名称。 |
| moduleName | string | 是 | 否 | ExtensionAbility所属的HAP包的名称 | | moduleName | string | 是 | 否 | ExtensionAbility所属的HAP的名称。 |
| name | string | 是 | 否 | ExtensionAbility名称 | | name | string | 是 | 否 | ExtensionAbility名称。 |
| labelId | number | 是 | 否 | ExtensionAbility的标签资源id | | labelId | number | 是 | 否 | ExtensionAbility的标签资源ID。 |
| descriptionId | number | 是 | 否 | ExtensionAbility的描述资源id | | descriptionId | number | 是 | 否 | ExtensionAbility的描述资源ID。 |
| iconId | number | 是 | 否 | ExtensionAbility的图标资源id | | iconId | number | 是 | 否 | ExtensionAbility的图标资源ID。 |
| isVisible | boolean | 是 | 否 | 判断ExtensionAbility是否可以被其他应用调用 | | isVisible | boolean | 是 | 否 | 判断ExtensionAbility是否可以被其他应用调用。 |
| extensionAbilityType | [ExtensionAbilityType](js-apis-bundleManager.md#extensionabilitytype) | 是 | 否 | ExtensionAbility类型 | | extensionAbilityType | [ExtensionAbilityType](js-apis-bundleManager.md#extensionabilitytype) | 是 | 否 | ExtensionAbility类型。 |
| permissions | Array\<string> | 是 | 否 | 被其他应用ExtensionAbility调用时需要申请的权限集合 | | permissions | Array\<string> | 是 | 否 | 被其他应用ExtensionAbility调用时需要申请的权限集合。 |
| applicationInfo | [ApplicationInfo](js-apis-bundleManager-applicationInfo.md) | 是 | 否 | 应用程序的配置信息 | | applicationInfo | [ApplicationInfo](js-apis-bundleManager-applicationInfo.md) | 是 | 否 | 应用程序的配置信息。 |
| metadata | Array\<[Metadata](js-apis-bundleManager-metadata.md)> | 是 | 否 | ExtensionAbility的元信息 | | metadata | Array\<[Metadata](js-apis-bundleManager-metadata.md)> | 是 | 否 | ExtensionAbility的元信息。 |
| enabled | boolean | 是 | 否 | ExtensionAbility是否可用 | | enabled | boolean | 是 | 否 | ExtensionAbility是否可用。 |
| readPermission | string | 是 | 否 | 读取ExtensionAbility数据所需的权限 | | readPermission | string | 是 | 否 | 读取ExtensionAbility数据所需的权限。 |
| writePermission | string | 是 | 否 | 向ExtensionAbility写数据所需的权限 | | writePermission | string | 是 | 否 | 向ExtensionAbility写数据所需的权限。 |
\ No newline at end of file \ No newline at end of file
...@@ -11,6 +11,6 @@ ...@@ -11,6 +11,6 @@
| abilityName<sup>8+</sup> | string | 是 | 否 | Ability名称。 | | abilityName<sup>8+</sup> | string | 是 | 否 | Ability名称。 |
| uid<sup>8+</sup> | number | 是 | 否 | 用户ID。 | | uid<sup>8+</sup> | number | 是 | 否 | 用户ID。 |
| state<sup>8+</sup> | number | 是 | 否 | Ability状态。 | | state<sup>8+</sup> | number | 是 | 否 | Ability状态。 |
| moduleName<sup>9+</sup> | string | 是 | 否 | Ability所属的HAP的名称。 | | moduleName<sup>9+</sup> | string | 是 | 否 | Ability所属的HAP的名称。 |
| abilityType<sup>8+</sup> | string | 是 | 否 | Ability类型:页面或服务等。 | | abilityType<sup>8+</sup> | string | 是 | 否 | Ability类型:页面或服务等。 |
...@@ -14,7 +14,7 @@ UIAbilityContext是[UIAbility](js-apis-app-ability-uiAbility.md)的上下文环 ...@@ -14,7 +14,7 @@ UIAbilityContext是[UIAbility](js-apis-app-ability-uiAbility.md)的上下文环
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| -------- | -------- | -------- | -------- | -------- | | -------- | -------- | -------- | -------- | -------- |
| abilityInfo | [AbilityInfo](js-apis-bundleManager-abilityInfo.md) | 是 | 否 | UIAbility的相关信息。 | | abilityInfo | [AbilityInfo](js-apis-bundleManager-abilityInfo.md) | 是 | 否 | UIAbility的相关信息。 |
| currentHapModuleInfo | [HapModuleInfo](js-apis-bundleManager-hapModuleInfo.md) | 是 | 否 | 当前HAP的信息。 | | currentHapModuleInfo | [HapModuleInfo](js-apis-bundleManager-hapModuleInfo.md) | 是 | 否 | 当前HAP的信息。 |
| config | [Configuration](js-apis-app-ability-configuration.md) | 是 | 否 | 与UIAbility相关的配置信息,如语言、颜色模式等。 | | config | [Configuration](js-apis-app-ability-configuration.md) | 是 | 否 | 与UIAbility相关的配置信息,如语言、颜色模式等。 |
> **关于示例代码的说明:** > **关于示例代码的说明:**
......
...@@ -99,7 +99,7 @@ install(hapFilePaths: Array&lt;string&gt;, installParam: InstallParam, callback: ...@@ -99,7 +99,7 @@ install(hapFilePaths: Array&lt;string&gt;, installParam: InstallParam, callback:
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| --------------- | ---------------------------------------------------- | ---- | ------------------------------------------------------------ | | --------------- | ---------------------------------------------------- | ---- | ------------------------------------------------------------ |
| hapFilePaths | Array&lt;string&gt; | 是 | 存储应用程序包的路径。路径应该是当前应用程序中存放HAP包的数据目录。当传入的路径是一个目录时, 该目录下只能放同一个应用的HAP包,且这些HAP包的签名需要保持一致。 | | hapFilePaths | Array&lt;string&gt; | 是 | 存储应用程序包的路径。路径应该是当前应用程序中存放HAP的数据目录。当传入的路径是一个目录时, 该目录下只能放同一个应用的HAP,且这些HAP的签名需要保持一致。 |
| installParam | [InstallParam](#installparam) | 是 | 指定安装所需的其他参数。 | | installParam | [InstallParam](#installparam) | 是 | 指定安装所需的其他参数。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,安装应用成功,err为undefined,否则为错误对象。 | | callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,安装应用成功,err为undefined,否则为错误对象。 |
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
提供rawfile文件描述符信息。 提供rawfile文件描述符信息。
RawFileDescriptor是[OH_ResourceManager_GetRawFileDescriptor()](rawfile.md#oh_resourcemanager_getrawfiledescriptor)的输出参数,涵盖了rawfile文件的文件描述符以及在HAP中的起始位置和长度。 RawFileDescriptor是[OH_ResourceManager_GetRawFileDescriptor()](rawfile.md#oh_resourcemanager_getrawfiledescriptor)的输出参数,涵盖了rawfile文件的文件描述符以及在HAP中的起始位置和长度。
**自从:** **自从:**
...@@ -21,11 +21,11 @@ RawFileDescriptor是[OH_ResourceManager_GetRawFileDescriptor()](rawfile.md#oh_re ...@@ -21,11 +21,11 @@ RawFileDescriptor是[OH_ResourceManager_GetRawFileDescriptor()](rawfile.md#oh_re
### 成员变量 ### 成员变量
| 成员变量名称 | 描述 | | 成员变量名称 | 描述 |
| -------- | -------- | | -------- | -------- |
| [fd](#fd) | rawfile文件描述符 | | [fd](#fd) | rawfile文件描述符 |
| [start](#start) | rawfile在HAP包中的长度 | | [start](#start) | rawfile在HAP中的长度 |
| [length](#length) | rawfile在HAP包中的起始位置 | | [length](#length) | rawfile在HAP中的起始位置 |
## 结构体成员变量说明 ## 结构体成员变量说明
...@@ -52,7 +52,7 @@ long RawFileDescriptor::length ...@@ -52,7 +52,7 @@ long RawFileDescriptor::length
**描述:** **描述:**
rawfile在HAP中的长度 rawfile在HAP中的长度
### start ### start
...@@ -64,4 +64,4 @@ long RawFileDescriptor::start ...@@ -64,4 +64,4 @@ long RawFileDescriptor::start
**描述:** **描述:**
rawfile在HAP中的起始位置 rawfile在HAP中的起始位置
...@@ -216,9 +216,9 @@ bool OH_ResourceManager_GetRawFileDescriptor (const RawFile * rawFile, RawFileDe ...@@ -216,9 +216,9 @@ bool OH_ResourceManager_GetRawFileDescriptor (const RawFile * rawFile, RawFileDe
**参数:** **参数:**
| Name | 描述 | | Name | 描述 |
| ---------- | -------------------------------- | | ---------- | ---------------------------------------------------- |
| rawFile | 表示指向[RawFile](#rawfile)的指针。 | | rawFile | 表示指向[RawFile](#rawfile)的指针。 |
| descriptor | 显示rawfile文件描述符,以及在HAP中的起始位置和长度。 | | descriptor | 显示rawfile文件描述符,以及在HAP中的起始位置和长度。 |
**返回:** **返回:**
...@@ -483,8 +483,8 @@ bool OH_ResourceManager_ReleaseRawFileDescriptor (const RawFileDescriptor & desc ...@@ -483,8 +483,8 @@ bool OH_ResourceManager_ReleaseRawFileDescriptor (const RawFileDescriptor & desc
**参数:** **参数:**
| Name | 描述 | | Name | 描述 |
| ---------- | -------------------------------- | | ---------- | ---------------------------------------------------- |
| descriptor | 包含rawfile文件描述符,以及在HAP中的起始位置和长度。 | | descriptor | 包含rawfile文件描述符,以及在HAP中的起始位置和长度。 |
**返回:** **返回:**
......
...@@ -20,7 +20,7 @@ Hap包签名工具支持本地签名需求的开发,为OpenHarmony应用提供 ...@@ -20,7 +20,7 @@ Hap包签名工具支持本地签名需求的开发,为OpenHarmony应用提供
OpenHarmony采用RFC5280标准构建X509证书信任体系。用于应用签名的OpenHarmony证书共有三级,分为:根CA证书、中间CA证书、最终实体证书,其中最终实体证书分为应用签名证书和profile签名证书。应用签名证书表示应用开发者的身份,可保证系统上安装的应用来源可追溯,profile签名证书实现对profile文件的签名进行验签,保证profile文件的完整性。 OpenHarmony采用RFC5280标准构建X509证书信任体系。用于应用签名的OpenHarmony证书共有三级,分为:根CA证书、中间CA证书、最终实体证书,其中最终实体证书分为应用签名证书和profile签名证书。应用签名证书表示应用开发者的身份,可保证系统上安装的应用来源可追溯,profile签名证书实现对profile文件的签名进行验签,保证profile文件的完整性。
- HAP - HAP:
HAP(OpenHarmony Ability Package)是Ability的部署包,OpenHarmony应用代码围绕Ability组件展开,它是由一个或者多个Ability组成。 HAP(OpenHarmony Ability Package)是Ability的部署包,OpenHarmony应用代码围绕Ability组件展开,它是由一个或者多个Ability组成。
......
...@@ -48,10 +48,10 @@ bm install [-h] [-p path] [-u userId] [-r] [-w waitting-time] ...@@ -48,10 +48,10 @@ bm install [-h] [-p path] [-u userId] [-r] [-w waitting-time]
| 命令 | 是否必选 | 描述 | | 命令 | 是否必选 | 描述 |
| -------- | -------- | -------- | | -------- | -------- | -------- |
| -h | 否,默认输出帮助信息 | 显示install支持的命令信息 | | -h | 否,默认输出帮助信息 | 显示install支持的命令信息 |
| -p | 是 | 安装HAP路径,支持指定路径和多个HAP同时安装 | | -p | 是 | 安装HAP路径,支持指定路径和多个HAP同时安装 |
| -u | 否,默认安装到当前所有用户上 | 给指定用户安装一个HAP | | -u | 否,默认安装到当前所有用户上 | 给指定用户安装一个HAP |
| -r | 否,默认值为覆盖安装 | 覆盖安装一个HAP | | -r | 否,默认值为覆盖安装 | 覆盖安装一个HAP |
| -w | 否,默认等待5s | 安装HAP时指定bm工具等待时间,最小的等待时长为5s,最大的等待时长为600s,&nbsp;默认缺省为5s | | -w | 否,默认等待5s | 安装HAP时指定bm工具等待时间,最小的等待时长为5s,最大的等待时长为600s,&nbsp;默认缺省为5s |
示例: 示例:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册