Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
4d5ce1bd
D
Docs
项目概览
OpenHarmony
/
Docs
1 年多 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
4d5ce1bd
编写于
4月 21, 2023
作者:
S
shilei
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
sync docs
Signed-off-by:
N
shilei
<
shilei91@huawei.com
>
上级
4d1ee01e
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
188 addition
and
1 deletion
+188
-1
zh-cn/application-dev/reference/apis/js-apis-installer.md
zh-cn/application-dev/reference/apis/js-apis-installer.md
+188
-1
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-installer.md
浏览文件 @
4d5ce1bd
...
...
@@ -146,6 +146,73 @@ try {
}
```
## BundleInstaller.install
install(hapFilePaths: Array
\<
string
\>
, installParam?: InstallParam) : Promise
\<
void
\>
;
以异步方法安装应用,使用Promise形式返回结果。
**系统接口:**
此接口为系统接口。
**需要权限:**
ohos.permission.INSTALL_BUNDLE
**系统能力:**
SystemCapability.BundleManager.BundleFramework.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------------ | ----------------------------- | ---- | ------------------------------------------------------------ |
| hapFilePaths | Array
\<
string
\>
| 是 | 存储应用程序包的路径。路径应该是当前应用程序中存放HAP的数据目录。当传入的路径是一个目录时, 该目录下只能放同一个应用的HAP,且这些HAP的签名需要保持一致。 |
| installParam |
[
InstallParam
](
#installparam
)
| 否 | 指定安装所需的其他参数。 |
**返回值:**
| 类型 | 说明 |
| --------------- | -------------------------------------- |
| Promise
\<
void
\>
| Promise对象。无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.bundle错误码
](
../errorcodes/errorcode-bundle.md
)
。
| 错误码ID | 错误信息 |
| -------- | ------------------------------------------------------------ |
| 17700004 | The specified user ID is not found. |
| 17700010 | Failed to install the HAP because the HAP fails to be parsed. |
| 17700011 | Failed to install the HAP because the HAP signature fails to be verified. |
| 17700012 | Failed to install the HAP because the HAP path is invalid or the HAP is too large. |
| 17700015 | Failed to install the HAPs because they have different configuration information. |
| 17700016 | Failed to install the HAP because of insufficient system disk space. |
| 17700017 | Failed to install the HAP since the version of the HAP to install is too early. |
| 17700018 | Failed to install because the dependent module does not exist. |
**示例:**
```
ts
import
installer
from
'
@ohos.bundle.installer
'
;
let
hapFilePaths
=
[
'
/data/storage/el2/base/haps/entry/files/
'
];
let
installParam
=
{
userId
:
100
,
isKeepData
:
false
,
installFlag
:
1
,
};
try
{
installer
.
getBundleInstaller
().
then
(
data
=>
{
data
.
install
(
hapFilePaths
,
installParam
)
.
then
((
data
)
=>
{
console
.
info
(
'
install successfully:
'
+
JSON
.
stringify
(
data
));
}).
catch
((
error
)
=>
{
console
.
error
(
'
install failed:
'
+
error
.
message
);
});
}).
catch
(
error
=>
{
console
.
error
(
'
getBundleInstaller failed. Cause:
'
+
error
.
message
);
});
}
catch
(
error
)
{
console
.
error
(
'
getBundleInstaller failed. Cause:
'
+
error
.
message
);
}
```
## BundleInstaller.uninstall
uninstall(bundleName: string, installParam: InstallParam, callback: AsyncCallback
<
void
>
): void;
...
...
@@ -172,6 +239,7 @@ uninstall(bundleName: string, installParam: InstallParam, callback: AsyncCallbac
| 错误码ID | 错误信息 |
| -------- | ------------------------------------------------------------ |
| 17700001 | The specified bundle name is not found. |
| 17700004 | The specified user ID is not found. |
| 17700020 | The specified bundle is pre-installed bundle which cannot be uninstalled. |
...
...
@@ -202,12 +270,72 @@ try {
console
.
error
(
'
getBundleInstaller failed. Cause:
'
+
error
.
message
);
}
```
## BundleInstaller.uninstall
uninstall(bundleName: string, installParam?: InstallParam) : Promise
\<
void
\>
;
以异步方法卸载应用,使用Promise形式返回结果。
**系统接口:**
此接口为系统接口。
**需要权限:**
ohos.permission.INSTALL_BUNDLE
**系统能力:**
SystemCapability.BundleManager.BundleFramework.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------------ | ----------------------------- | ---- | ------------------------------------------------------------ |
| bundleName | string | 是 | 待卸载应用的包名。 |
| installParam |
[
InstallParam
](
#installparam
)
| 否 | 指定安装所需的其他参数。 |
**返回值:**
| 类型 | 说明 |
| --------------- | -------------------------------------- |
| Promise
\<
void
\>
| Promise对象。无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.bundle错误码
](
../errorcodes/errorcode-bundle.md
)
。
| 错误码ID | 错误信息 |
| -------- | ------------------------------------------------------------ |
| 17700001 | The specified bundle name is not found. |
| 17700004 | The specified user ID is not found. |
| 17700020 | The specified bundle is pre-installed bundle which cannot be uninstalled. |
**示例:**
```
ts
import
installer
from
'
@ohos.bundle.installer
'
;
let
bundleName
=
'
com.ohos.demo
'
;
let
installParam
=
{
userId
:
100
,
isKeepData
:
false
,
installFlag
:
1
,
};
try
{
installer
.
getBundleInstaller
().
then
(
data
=>
{
data
.
uninstall
(
bundleName
,
installParam
)
.
then
((
data
)
=>
{
console
.
info
(
'
uninstall successfully:
'
+
JSON
.
stringify
(
data
));
}).
catch
((
error
)
=>
{
console
.
error
(
'
uninstall failed:
'
+
error
.
message
);
});
}).
catch
(
error
=>
{
console
.
error
(
'
getBundleInstaller failed. Cause:
'
+
error
.
message
);
});
}
catch
(
error
)
{
console
.
error
(
'
getBundleInstaller failed. Cause:
'
+
error
.
message
);
}
```
## BundleInstaller.recover
recover(bundleName: string, installParam: InstallParam, callback: AsyncCallback
<
void
>
): void;
以异步方法回滚应用,使用callback形式返回结果。
以异步方法回滚应用
到初次安装时的状态
,使用callback形式返回结果。
**系统接口:**
此接口为系统接口,三方应用不支持调用
...
...
@@ -229,6 +357,7 @@ recover(bundleName: string, installParam: InstallParam, callback: AsyncCallback&
| 错误码ID | 错误信息 |
| -------- | ----------------------------------- |
| 17700001 | The specified bundle name is not found. |
| 17700004 | The specified user ID is not found. |
**示例:**
...
...
@@ -258,7 +387,65 @@ try {
console
.
error
(
'
getBundleInstaller failed. Cause:
'
+
error
.
message
);
}
```
## BundleInstaller.recover
recover(bundleName: string, installParam?: InstallParam) : Promise
\<
void
\>
;
以异步方法回滚应用到初次安装时的状态,使用Promise形式返回结果。
**系统接口:**
此接口为系统接口。
**需要权限:**
ohos.permission.INSTALL_BUNDLE
**系统能力:**
SystemCapability.BundleManager.BundleFramework.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------------ | ----------------------------- | ---- | ------------------------------------------------------------ |
| bundleName | string | 是 | 待卸载应用的包名。 |
| installParam |
[
InstallParam
](
#installparam
)
| 否 | 指定安装所需的其他参数。 |
**返回值:**
| 类型 | 说明 |
| --------------- | -------------------------------------- |
| Promise
\<
void
\>
| Promise对象。无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.bundle错误码
](
../errorcodes/errorcode-bundle.md
)
。
| 错误码ID | 错误信息 |
| -------- | ----------------------------------- |
| 17700001 | The specified bundle name is not found. |
| 17700004 | The specified user ID is not found. |
**示例:**
```
ts
import
installer
from
'
@ohos.bundle.installer
'
;
let
bundleName
=
'
com.ohos.demo
'
;
let
installParam
=
{
userId
:
100
,
isKeepData
:
false
,
installFlag
:
1
,
};
try
{
installer
.
getBundleInstaller
().
then
(
data
=>
{
data
.
recover
(
bundleName
,
installParam
)
.
then
((
data
)
=>
{
console
.
info
(
'
recover successfully:
'
+
JSON
.
stringify
(
data
));
}).
catch
((
error
)
=>
{
console
.
error
(
'
recover failed:
'
+
error
.
message
);
});
}).
catch
(
error
=>
{
console
.
error
(
'
getBundleInstaller failed. Cause:
'
+
error
.
message
);
});
}
catch
(
error
)
{
console
.
error
(
'
getBundleInstaller failed. Cause:
'
+
error
.
message
);
}
```
## HashParam
应用程序安装卸载哈希参数信息。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录