• Home
Name Date Size #Lines LOC

..--

AppScope/06-May-2025-3532

entry/06-May-2025-1,090993

hvigor/06-May-2025-3836

screenshots/06-May-2025-

.gitignoreD06-May-2025133 1212

README_zh.mdD06-May-20254 KiB7453

build-profile.json5D06-May-20251.3 KiB5756

code-linter.json5D06-May-2025958 3534

hvigorfile.tsD06-May-2025843 225

oh-package.json5D06-May-2025809 2624

ohosTest.mdD06-May-20251.5 KiB1612

README_zh.md

1# 应用触发数据备份恢复(仅对系统应用开放)
2
3## 介绍
4
5仅系统应用可以触发数据备份恢复,触发后备份恢复框架会确认各个应用是否接入了数据备份恢复。如果应用已接入,备份恢复框架将会根据应用的配置文件备份、恢复数据。本实例实现了获取能力文件、应用备份数据和应用恢复数据三大功能,应用还涉及到权限申请方式和系统应用签名,该工程中展示的代码详细描述可查如下链接。
6
7- [获取能力文件](https://gitee.com/openharmony/docs/blob/OpenHarmony-5.0.1-Release/zh-cn/application-dev/file-management/app-file-backup.md#获取能力文件)
8- [应用备份数据](https://gitee.com/openharmony/docs/blob/OpenHarmony-5.0.1-Release/zh-cn/application-dev/file-management/app-file-backup.md#应用备份数据)
9- [应用恢复数据](https://gitee.com/openharmony/docs/blob/OpenHarmony-5.0.1-Release/zh-cn/application-dev/file-management/app-file-backup.md#应用恢复数据)
10
11## 效果预览
12
13| <img src="./screenshots/start.jpg" width = "450"/> |
14| :------------------------------------------------: |
15|                                                    |
16
17使用说明:
18
191. 本应用主要用于拉起应用数据备份,依赖于FileBackuoExtension应用,在使用前确保安装FileBackuoExtension应用。
202. 启动该应用后,通过点击相关的按钮可以拉起FileBackuoExtensiony应用的数据备份和恢复,备份和恢复将会按照FileBackuoExtensiony应用中配置的数据 备份和恢复框架进行。
21
22## 工程目录
23
24```
25├──entry/src/main
26|	├──ets
27|	|	├──backuprestore
28|	|	|	└──BackupRestore.ets        // 备份恢复函数封装
29|	|	├──commom
30|	|	|	├──Logger.ts				// 日志工具
31|	|	├──entryability
32|	|	|	└──EntryAbility.ets         // 程序入口类
33|	|	├──entrybackupability
34|	|	|	└──EntryBackupAbility.ets
35|	|	└──pages                        // 页面文件
36|	|		└──Index.ets 				// 主界面
37|	├──resources						// 资源文件目录
38```
39
40## 具体实现
41
421. 导入依赖模块@ohos.file.backup,申请系统权限ohos.permission.BACKUP,详情请参考:[权限申请的方式](https://gitee.com/openharmony/docs/blob/OpenHarmony-5.0.1-Release/zh-cn/application-dev/security/AccessToken/determine-application-mode.md)
432. 获取能力文件需要调用backup.getLocalCapabilities,函数封装在BackupRestore.ets443. 启动应用备份过程中,备份恢复服务会将应用的数据打包成文件,通过创建实例时所注册的回调onFileReady接口返回文件句柄。
454. 备份恢复服务会根据开发者调用getFileHandle的请求内容,将应用待恢复数据的文件句柄,通过创建实例时注册的回调onFileReady]接口返回。
46
47## 相关权限
48
49| 权限名                 | 权限说明                   | 级别         |
50| ---------------------- | -------------------------- | ------------ |
51| ohos.permission.BACKUP | 允许应用拥有备份恢复能力。 | system_basic |
52
53## 依赖
54
55该应用作为系统级应用程序,为了实现备份和恢复功能,必须预先安装文件备份扩展应用。
56
57## 约束与限制
58
591. 本示例仅支持标准系统上运行,支持设备:RK3568。
602. 本示例为Stage模型,支持API14版本SDK,版本号:5.0.2.58,镜像版本号:OpenHarmony 5.1.0.51。
613. 本示例需要使用DevEco Studio 5. 1Release (Build Version: 5.0.5.306, built on December 6, 2024)及以上版本才可编译运行。
624. 本示例涉及部分接口需要配置系统应用签名,可以参考[特殊权限配置方法](https://gitee.com/openharmony/docs/blob/OpenHarmony-5.0.1-Release/zh-cn/application-dev/security/hapsigntool-overview.md) ,把配置文件中的“apl”字段信息改为“system_basic”。
63
64## 下载
65
66```
67git init
68git config core.sparsecheckout true
69echo code/DocsSample/CoreFile/AppFileBackup > .git/info/sparse-checkout
70git remote add origin https://gitee.com/openharmony/applications_app_samples.git
71git pull origin master
72```
73
74