js-apis-bundle-BundleInstaller.md 5.8 KB
Newer Older
J
junyi233 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
# BundleInstaller



> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> 本模块首批接口从API version 7 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。



在设备上安装、升级和删除捆绑包



## BundleInstaller.install

install(bundleFilePaths: Array<string>, param: InstallParam, callback: AsyncCallback<InstallStatus>): void;

以异步方法在HAP中安装应用程序,使用callback形式返回结果。

**需要权限:**

ohos.permission.INSTALL_BUNDLE

**系统能力:**

SystemCapability.BundleManager.BundleFramework

J
junyi233 已提交
28 29
**系统API:** 此接口为系统接口,三方应用不支持调用

J
junyi233 已提交
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
**参数:**

| 名称            | 类型                                                 | 必填 | 描述                                                         |
| --------------- | ---------------------------------------------------- | ---- | ------------------------------------------------------------ |
| bundleFilePaths | Array<string>                                  | 是   | 指示存储应用程序包的路径。路径应该是当前应用程序的数据目录的相对路径。 |
| param           | [InstallParam](#installparam)                        | 是   | 指定安装所需的其他参数。                                     |
| callback        | AsyncCallback<[InstallStatus](#installstatus)> | 是   | 程序启动作为入参的回调函数,返回安装状态信息。               |

## BundleInstaller.uninstall

uninstall(bundleName: string, param: InstallParam, callback: AsyncCallback<InstallStatus>): void;

以异步方法卸载应用程序,使用callback形式返回结果。

**需要权限:**

ohos.permission.INSTALL_BUNDLE

**系统能力:**

SystemCapability.BundleManager.BundleFramework

J
junyi233 已提交
52 53
**系统API:** 此接口为系统接口,三方应用不支持调用

J
junyi233 已提交
54 55 56 57 58 59 60 61
**参数:**

| 名称       | 类型                                                 | 必填 | 描述                                           |
| ---------- | ---------------------------------------------------- | ---- | ---------------------------------------------- |
| bundleName | string                                               | 是   | 包名                                           |
| param      | [InstallParam](#installparam)                        | 是   | 指定安装所需的其他参数。                       |
| callback   | AsyncCallback<[InstallStatus](#installstatus)> | 是   | 程序启动作为入参的回调函数,返回安装状态信息。 |

J
junyi233 已提交
62
## BundleInstaller.recover<sup>8+</sup>
J
junyi233 已提交
63 64 65 66 67 68 69 70 71 72 73 74 75

recover(bundleName: string, param: InstallParam, callback: AsyncCallback&lt;InstallStatus&gt;): void;

以异步方法恢复一个应用程序,使用callback形式返回结果。

**需要权限:**

ohos.permission.INSTALL_BUNDLE

**系统能力:**

SystemCapability.BundleManager.BundleFramework

J
junyi233 已提交
76 77
**系统API:** 此接口为系统接口,三方应用不支持调用

J
junyi233 已提交
78 79 80 81 82 83 84 85
**参数:**

| 名称       | 类型                                                 | 必填 | 描述                                           |
| ---------- | ---------------------------------------------------- | ---- | ---------------------------------------------- |
| bundleName | string                                               | 是   | 包名                                           |
| param      | [InstallParam](#installparam)                        | 是   | 指定安装所需的其他参数。                       |
| callback   | AsyncCallback&lt;[InstallStatus](#installstatus)&gt; | 是   | 程序启动作为入参的回调函数,返回安装状态信息。 |

J
junyi233 已提交
86 87 88 89 90 91 92 93 94 95 96 97 98
## HashParam<sup>9+</sup>

应用程序安装卸载信息

 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework

 **系统API:**  此接口为系统接口,三方应用不支持调用

| 名称       | 类型   | 说明             |
| ---------- | ------ | ---------------- |
| moduleName | string | 应用程序模块名称 |
| hashValue  | string | 哈希值           |

J
junyi233 已提交
99 100 101 102 103 104
## InstallParam

应用程序安装卸载信息

 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework

J
junyi233 已提交
105 106 107 108 109 110 111 112 113
 **系统API:**  此接口为系统接口,三方应用不支持调用

| 名称                           | 类型                           | 说明               |
| ------------------------------ | ------------------------------ | ------------------ |
| userId                         | number                         | 指示用户id         |
| installFlag                    | number                         | 指示安装标志       |
| isKeepData                     | boolean                        | 指示参数是否有数据 |
| hashParams<sup>9+</sup>        | Array<[HashParam](#hashparam)> | 哈希值参数         |
| crowdtestDeadline<sup>9+</sup> | number                         | 测试包的被杀死时间 |
J
junyi233 已提交
114 115 116 117 118 119 120

## InstallStatus

应用程序安装状态

 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework

J
junyi233 已提交
121 122
 **系统API:**  此接口为系统接口,三方应用不支持调用

J
junyi233 已提交
123 124 125
| 名称          | 类型                                                         | 可读 | 可写 | 说明                           |
| ------------- | ------------------------------------------------------------ | ---- | ---- | ------------------------------ |
| status        | bundle.[InstallErrorCode](js-apis-Bundle.md#installerrorcode) | 是   | 否   | 表示安装或卸载错误状态码       |
J
junyi233 已提交
126
| statusMessage | string                                                       | 是   | 否   | 表示安装或卸载的字符串结果信息 |