本模块提供企业批量部署还原能力,包括用户数据备份、用户数据还原、应用沙箱数据备份、应用沙箱数据还原等。
起始版本: 26.0.1
可备份或还原应用的信息。
模型约束: 此接口仅可在Stage模型下使用。
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
| 名称 | 类型 | 只读 | 可选 | 说明 |
|---|---|---|---|---|
| bundleName | string | 否 | 否 | 应用包名。 |
| versionCode | number | 否 | 否 | 应用包的版本号,对应app.json5中配置的versionCode字段。 |
| versionName | string | 否 | 否 | 应用包的版本文本描述信息。 |
备份或还原的进度信息。
模型约束: 此接口仅可在Stage模型下使用。
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
| 名称 | 类型 | 只读 | 可选 | 说明 |
|---|---|---|---|---|
| progress | number | 否 | 否 | 备份或还原的进度。 |
type BackupRestoreProgressCallback = (progressInfo: BackupRestoreProgressInfo) => void
备份或还原进度回调。
模型约束: 此接口仅可在Stage模型下使用。
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| progressInfo | BackupRestoreProgressInfo | 是 | 备份或还原的进度信息。 |
目录标识符枚举。
模型约束: 此接口仅可在Stage模型下使用。
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
| 名称 | 值 | 说明 |
|---|---|---|
| DOCUMENTS | 0 | 表示“文档”目录。 |
| DOWNLOAD | 1 | 表示“下载”目录。 |
还原用户数据的配置项。
模型约束: 此接口仅可在Stage模型下使用。
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
| 名称 | 类型 | 只读 | 可选 | 说明 |
|---|---|---|---|---|
| excludeDirIdentifiers | DirectoryIdentifier[] | 否 | 是 | 还原用户数据时,表示选择禁止还原目录的标识符。默认为还原所有目录。 |
backupUserData(dest: string, progressCallback: BackupRestoreProgressCallback):Promise<void>
备份用户数据。使用Promise异步回调。
模型约束: 此接口仅可在Stage模型下使用。
需要权限: ohos.permission.ENTERPRISE_MANAGE_BACKUP
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| dest | string | 是 | 目标目录的应用沙箱路径。 |
| progressCallback | BackupRestoreProgressCallback | 是 | 备份进度的回调。注意:回调接口中不能处理耗时业务。 |
返回值:
| 类型 | 说明 |
|---|---|
| Promise<void> | Promise对象,无返回结果。当备份用户数据失败时会抛出错误对象。 |
错误码:
以下错误码的详细介绍请参见通用错误码和ArkTS API错误码。
| 错误码ID | 错误信息 |
|---|---|
| 201 | Permission verification failed. The application does not have the permission required to call the API. |
| 1029200001 | The enterprise batch deploy restore service is not started. |
| 1029200002 | The enterprise batch deploy restore service is busy. |
| 1029200004 | The backup or restore operation was canceled by the user. |
| 1029200005 | No such directory. |
| 1029200006 | Not a directory. |
| 1029200007 | The enterprise batch deploy restore service is abnormal.Possible causes: File operation exception. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import enterpriseDeployRestore from '@hms.pcService.enterpriseDeployRestore';
// “/userData”为示例目标目录,根据实际情况进行替换
let destPath = context.filesDir + "/userData";
let progressCallback: enterpriseDeployRestore.BackupRestoreProgressCallback =
(progressInfo: enterpriseDeployRestore.BackupRestoreProgressInfo) => {
console.info(`Progress: ${progressInfo.progress}`);
};
enterpriseDeployRestore.backupUserData(destPath, progressCallback).then(() => {
console.info('Succeeded in backing up user data.');
}).catch((err: BusinessError) => {
console.error(`Failed to back up user data. Code: ${err.code}, Message: ${err.message}.`);
}); restoreUserData(src: string, progressCallback: BackupRestoreProgressCallback, options?: RestoreUserDataOptions):Promise<void>
还原用户数据。使用Promise异步回调。
模型约束: 此接口仅可在Stage模型下使用。
需要权限: ohos.permission.ENTERPRISE_MANAGE_BACKUP
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| src | string | 是 | 源目录的应用沙箱路径。 |
| progressCallback | BackupRestoreProgressCallback | 是 | 还原进度的回调。注意:回调接口中不能处理耗时业务。 |
| options | RestoreUserDataOptions | 否 | 还原用户数据的可选配置项。 |
返回值:
| 类型 | 说明 |
|---|---|
| Promise<void> | Promise对象,无返回结果。当还原用户数据失败时会抛出错误对象。 |
错误码:
以下错误码的详细介绍请参见通用错误码和ArkTS API错误码。
| 错误码ID | 错误信息 |
|---|---|
| 201 | Permission verification failed. The application does not have the permission required to call the API. |
| 1029200001 | The enterprise batch deploy restore service is not started. |
| 1029200002 | The enterprise batch deploy restore service is busy. |
| 1029200004 | The backup or restore operation was canceled by the user. |
| 1029200005 | No such directory. |
| 1029200006 | Not a directory. |
| 1029200007 | The enterprise batch deploy restore service is abnormal.Possible causes: File operation exception. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import enterpriseDeployRestore from '@hms.pcService.enterpriseDeployRestore';
// “/userData”为示例源目录,根据实际情况进行替换
let srcPath = context.filesDir + "/userData";
let progressCallback: enterpriseDeployRestore.BackupRestoreProgressCallback =
(progressInfo: enterpriseDeployRestore.BackupRestoreProgressInfo) => {
console.info(`Progress: ${progressInfo.progress}`);
};
enterpriseDeployRestore.restoreUserData(srcPath, progressCallback).then(() => {
console.info('Succeeded in restoring user data.');
}).catch((err: BusinessError) => {
console.error(`Failed to restore user data. Code: ${err.code}, Message: ${err.message}.`);
}); getUserBackupDataSize():Promise<number>
获取待备份用户的数据量大小。使用Promise异步回调。
模型约束: 此接口仅可在Stage模型下使用。
需要权限: ohos.permission.ENTERPRISE_MANAGE_BACKUP
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
返回值:
| 类型 | 说明 |
|---|---|
| Promise<number> | Promise对象,返回待备份用户数据的数据量大小。单位:Byte。 |
错误码:
以下错误码的详细介绍请参见通用错误码和ArkTS API错误码。
| 错误码ID | 错误信息 |
|---|---|
| 201 | Permission verification failed. The application does not have the permission required to call the API. |
| 1029200001 | The enterprise batch deploy restore service is not started. |
| 1029200002 | The enterprise batch deploy restore service is busy. |
| 1029200007 | The enterprise batch deploy restore service is abnormal.Possible causes: File operation exception. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import enterpriseDeployRestore from '@hms.pcService.enterpriseDeployRestore';
enterpriseDeployRestore.getUserBackupDataSize().then((totalSize: number) => {
console.info(`Size: ${totalSize}`);
}).catch((err: BusinessError) => {
console.error(`Failed to get data size. Code: ${err.code}, Message: ${err.message}.`);
}); getAllowedBackupAndRestoreBundleList():Promise<BundleInfo[]>
获取可备份或还原的应用信息列表。使用Promise异步回调。
模型约束: 此接口仅可在Stage模型下使用。
需要权限: ohos.permission.ENTERPRISE_MANAGE_BACKUP
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
返回值:
| 类型 | 说明 |
|---|---|
| Promise<BundleInfo[]> | Promise对象,返回可备份或还原的应用信息列表。 |
错误码:
以下错误码的详细介绍请参见通用错误码和ArkTS API错误码。
| 错误码ID | 错误信息 |
|---|---|
| 201 | Permission verification failed. The application does not have the permission required to call the API. |
| 1029200001 | The enterprise batch deploy restore service is not started. |
| 1029200007 | The enterprise batch deploy restore service is abnormal.Possible causes: File operation exception. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import enterpriseDeployRestore from '@hms.pcService.enterpriseDeployRestore';
enterpriseDeployRestore.getAllowedBackupAndRestoreBundleList().then((result: Array<enterpriseDeployRestore.BundleInfo>) => {
console.info('Succeeded in getting backup and restore bundle list.');
}).catch((err: BusinessError) => {
console.error(`Failed to get backup and restore bundle list. Code:${err.code}, Message:${err.message}.`);
}); backupBundles(bundleList: string[], dest: string, progressCallback: BackupRestoreProgressCallback):Promise<void>
备份应用沙箱数据。使用Promise异步回调。
模型约束: 此接口仅可在Stage模型下使用。
需要权限: ohos.permission.ENTERPRISE_MANAGE_BACKUP
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| bundleList | string[] | 是 | 待备份的应用包列表。 |
| dest | string | 是 | 目标目录的应用沙箱路径。 |
| progressCallback | BackupRestoreProgressCallback | 是 | 备份进度的回调。注意:回调接口中不能处理耗时业务。 |
返回值:
| 类型 | 说明 |
|---|---|
| Promise<void> | Promise对象,无返回结果。当备份应用沙箱数据失败时会抛出错误对象。 |
错误码:
以下错误码的详细介绍请参见通用错误码和ArkTS API错误码。
| 错误码ID | 错误信息 |
|---|---|
| 201 | Permission verification failed. The application does not have the permission required to call the API. |
| 1029200001 | The enterprise batch deploy restore service is not started. |
| 1029200002 | The enterprise batch deploy restore service is busy. |
| 1029200004 | The backup or restore operation was canceled by the user. |
| 1029200005 | No such directory. |
| 1029200006 | Not a directory. |
| 1029200007 | The enterprise batch deploy restore service is abnormal.Possible causes: File operation exception. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import enterpriseDeployRestore from '@hms.pcService.enterpriseDeployRestore';
let bundleInfoList: enterpriseDeployRestore.BundleInfo[] =
await enterpriseDeployRestore.getAllowedBackupAndRestoreBundleList();
let bundleNameList: string[] = [];
bundleInfoList.forEach((bundleInfo: enterpriseDeployRestore.BundleInfo) => {
bundleNameList.push(bundleInfo.bundleName);
})
// “/appData”为示例目标目录,根据实际情况进行替换
let destPath = context.filesDir + "/appData";
let progressCallback: enterpriseDeployRestore.BackupRestoreProgressCallback =
(progressInfo: enterpriseDeployRestore.BackupRestoreProgressInfo) => {
console.info(`Progress: ${progressInfo.progress}`);
};
enterpriseDeployRestore.backupBundles(bundleNameList, destPath, progressCallback).then(() => {
console.info('Succeeded in backing up bundles.');
}).catch((err: BusinessError) => {
console.error(`Failed to back up bundles. Code: ${err.code}, Message: ${err.message}.`);
}); restoreBundles(bundleList: string[], src: string, progressCallback: BackupRestoreProgressCallback):Promise<void>
还原应用沙箱数据。使用Promise异步回调。
模型约束: 此接口仅可在Stage模型下使用。
需要权限: ohos.permission.ENTERPRISE_MANAGE_BACKUP
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| bundleList | string[] | 是 | 待还原的应用包列表。 |
| src | string | 是 | 源目录的应用沙箱路径。 |
| progressCallback | BackupRestoreProgressCallback | 是 | 还原进度的回调。注意:回调接口中不能处理耗时业务。 |
返回值:
| 类型 | 说明 |
|---|---|
| Promise<void> | Promise对象,无返回结果。当还原应用沙箱数据失败时会抛出错误对象。 |
错误码:
以下错误码的详细介绍请参见通用错误码和ArkTS API错误码。
| 错误码ID | 错误信息 |
|---|---|
| 201 | Permission verification failed. The application does not have the permission required to call the API. |
| 1029200001 | The enterprise batch deploy restore service is not started. |
| 1029200002 | The enterprise batch deploy restore service is busy. |
| 1029200004 | The backup or restore operation was canceled by the user. |
| 1029200005 | No such directory. |
| 1029200006 | Not a directory. |
| 1029200007 | The enterprise batch deploy restore service is abnormal.Possible causes: File operation exception. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import enterpriseDeployRestore from '@hms.pcService.enterpriseDeployRestore';
let bundleInfoList: enterpriseDeployRestore.BundleInfo[] =
await enterpriseDeployRestore.getAllowedBackupAndRestoreBundleList();
let bundleNameList: string[] = [];
bundleInfoList.forEach((bundleInfo: enterpriseDeployRestore.BundleInfo) => {
bundleNameList.push(bundleInfo.bundleName);
})
// “/appData”为示例源目录,根据实际情况进行替换
let srcPath = context.filesDir + "/appData";
let progressCallback: enterpriseDeployRestore.BackupRestoreProgressCallback =
(progressInfo: enterpriseDeployRestore.BackupRestoreProgressInfo) => {
console.info(`Progress: ${progressInfo.progress}`);
};
enterpriseDeployRestore.restoreBundles(bundleNameList, srcPath, progressCallback).then(() => {
console.info('Succeeded in restoring bundles.');
}).catch((err: BusinessError) => {
console.error(`Failed to restore bundles. Code: ${err.code}, Message: ${err.message}.`);
}); getBundlesBackupDataSize(bundleList: string[]):Promise<number>
获取待备份的应用沙箱数据量大小。使用Promise异步回调。
模型约束: 此接口仅可在Stage模型下使用。
需要权限: ohos.permission.ENTERPRISE_MANAGE_BACKUP
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| bundleList | string[] | 是 | 待备份的应用包列表。 |
返回值:
| 类型 | 说明 |
|---|---|
| Promise<number> | Promise对象,返回待备份应用沙箱数据的数据量大小。单位:Byte。 |
错误码:
以下错误码的详细介绍请参见通用错误码和ArkTS API错误码。
| 错误码ID | 错误信息 |
|---|---|
| 201 | Permission verification failed. The application does not have the permission required to call the API. |
| 1029200001 | The enterprise batch deploy restore service is not started. |
| 1029200002 | The enterprise batch deploy restore service is busy. |
| 1029200007 | The enterprise batch deploy restore service is abnormal.Possible causes: File operation exception. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import enterpriseDeployRestore from '@hms.pcService.enterpriseDeployRestore';
let bundleInfoList: enterpriseDeployRestore.BundleInfo[] =
await enterpriseDeployRestore.getAllowedBackupAndRestoreBundleList();
let bundleNameList: string[] = [];
bundleInfoList.forEach((bundleInfo: enterpriseDeployRestore.BundleInfo) => {
bundleNameList.push(bundleInfo.bundleName);
})
enterpriseDeployRestore.getBundlesBackupDataSize(bundleNameList).then((totalSize: number) => {
console.info(`Size: ${totalSize}`);
}).catch((err: BusinessError) => {
console.error(`Failed to get data size. Code: ${err.code}, Message: ${err.message}.`);
}); cancelBackupRestore():Promise<void>
取消备份或还原操作。使用Promise异步回调。
模型约束: 此接口仅可在Stage模型下使用。
需要权限: ohos.permission.ENTERPRISE_MANAGE_BACKUP
系统能力: SystemCapability.PCService.EnterpriseDeployRestore
起始版本: 26.0.1
返回值:
| 类型 | 说明 |
|---|---|
| Promise<void> | Promise对象,无返回结果。当取消备份或还原操作失败时会抛出错误对象。 |
错误码:
以下错误码的详细介绍请参见通用错误码和ArkTS API错误码。
| 错误码ID | 错误信息 |
|---|---|
| 201 | Permission verification failed. The application does not have the permission required to call the API. |
| 1029200001 | The enterprise batch deploy restore service is not started. |
| 1029200003 | No backup or restore task in progress. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import enterpriseDeployRestore from '@hms.pcService.enterpriseDeployRestore';
enterpriseDeployRestore.cancelBackupRestore().then(() => {
console.info('Succeeded in cancelling backup or restore.');
}).catch((err: BusinessError) => {
console.error(`Failed to cancel backup or restore. Code: ${err.code}, Message: ${err.message}.`);
});