备份文件夹与数据目录映射在 HarmonyOS 中的管理

Windows、macOS、Linux、鸿蒙内核架构与开发环境深度对比 作为一名开发者,你是否曾面临这样的选择困境:新买的电脑,是装 Windows 还是装 Linux?想体验苹果生态,MacOS 真的适合编程吗?最近火热的鸿蒙系统,它和 Linux 到底什么关系,未来有没有搞头? 这不仅仅是“选哪个系统”的问题,其背后是截然不同的技术哲学、开发体验和职业路径。网上充斥着“XX系统最好”的片面观点,但真相是,没有完美的系统,只有最适合你当下场景的选择。选错了,可能意味着无尽的驱动兼容、环境配置噩梦,或是被封闭的生态锁死。 本文不会简单罗列四个系统的功能列表,而是从一个开发者和深 阅读详情
AI摘要

本文深入探讨华为鸿蒙HarmonyOS Next系统(API12)的数据备份和目录管理。介绍了应用沙箱目录与备份恢复目录的映射关系、应用数据备份路径配置与策略,给出数据目录与恢复目录映射表,还强调备份路径权限控制的注意事项,助力开发者保障数据安全恢复。

本文旨在深入探讨华为鸿蒙HarmonyOS Next系统(截止目前API12)的数据备份和目录管理细节,基于实际开发实践进行总结。
主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。
本文为原创内容,任何形式的转载必须注明出处及原作者。


HarmonyOS Next 中的备份恢复框架设计了完善的目录映射和数据隔离机制,以支持不同应用数据的可靠备份与还原。本文将系统介绍 HarmonyOS 中应用沙箱目录与备份恢复目录的映射关系、用户数据和应用数据的备份策略以及目录权限控制的注意事项,提供一些有效的备份路径配置和管理建议参考。


一、沙箱目录与备份恢复目录的映射关系

在 HarmonyOS Next 系统中,每个应用的数据都存储在其独立的应用沙箱目录内,系统通过备份恢复目录来隔离和管理应用的备份数据,确保备份数据的安全性和隔离性。

1. 应用沙箱目录

应用沙箱目录是指应用在安装时系统为其分配的专属存储区域,用户数据、缓存文件、数据库等应用数据均在该目录中独立存放。这一目录具有以下特点:

  • 数据隔离:不同应用之间的数据无法互相访问,确保应用数据的安全性。
  • 权限限制:仅应用本身可对其沙箱目录进行读写,其他应用无权访问。

2. 备份恢复目录

当设备升级、重装或迁移应用时,系统会将应用沙箱中的部分数据备份到备份恢复目录中,以便数据恢复。这些目录位于设备内部存储的特定位置,系统会自动将备份数据恢复到应用沙箱目录对应的路径下。

3. 目录映射关系

HarmonyOS Next 系统通过目录映射管理备份数据的存取路径,典型目录映射关系如下表所示:

应用数据目录备份恢复目录目录模式
/data/user_de/{userId}/{包名}//data/storage/el1/base/.backup/restore/{包名}/de/contextConstant.AreaMode.EL1
/data/user/{userId}/{包名}//data/storage/el2/base/.backup/restore/{包名}/ce/contextConstant.AreaMode.EL2
/data/media/{userId}/Android/data/{包名}//data/storage/el2/base/.backup/restore/{包名}/A/data/contextConstant.AreaMode.EL2

其中,EL1 和 EL2 模式分别对应应用不同类型的数据区域。通过目录映射关系,HarmonyOS 能够高效管理应用的备份和恢复路径。


二、应用数据备份路径配置与策略

HarmonyOS Next 允许开发者通过配置文件指定应用需要备份的数据目录,并通过 BackupExtensionAbility 执行备份和恢复。备份策略主要包括目录的选择、数据过滤、权限控制等内容。

1. 配置备份文件路径

备份文件路径通过在 backup_config.json 中配置 includes 和 excludes 字段来管理:

  • includes:指定需要备份的目录或文件路径。
  • excludes:指定需要排除在备份之外的目录或文件路径。

以下为 backup_config.json 示例配置:

{
  "allowToBackupRestore": true,
  "includes": [
    "/data/storage/el2/base/files/"
  ],
  "excludes": [
    "/data/storage/el2/base/files/cache/"
  ],
  "fullBackupOnly": false
}

2. 配置策略示例

假设一个音乐应用需要备份用户收藏的音乐列表和播放历史记录,但不备份缓存数据。可以在 backup_config.json 中进行如下配置:

{
  "allowToBackupRestore": true,
  "includes": [
    "/data/storage/el2/base/files/user_favorites/",
    "/data/storage/el2/base/files/play_history/"
  ],
  "excludes": [
    "/data/storage/el2/base/files/cache/"
  ],
  "fullBackupOnly": false
}

以上配置将用户收藏列表和播放历史作为备份数据,而将缓存数据排除在备份之外。这样在设备迁移或应用重装时,用户的核心数据得以保留,而无需携带非必要的缓存数据。


三、数据目录与恢复目录映射表

为了帮助开发者清晰了解常见应用数据目录和备份恢复目录的对应关系,以下列出常见的数据目录映射表:

数据类型沙箱目录示例备份恢复目录示例使用建议
用户数据/data/user_de/{userId}/{包名}//data/storage/el1/base/.backup/restore/{包名}/de/用户可见的基础数据
应用私有数据/data/user/{userId}/{包名}//data/storage/el2/base/.backup/restore/{包名}/ce/应用独立存储的私有数据
媒体数据/data/media/{userId}/Android/data/{包名}//data/storage/el2/base/.backup/restore/{包名}/A/data/图片、音频等多媒体数据

通过该表格,开发者可以更合理地选择需要备份的数据目录,确保在恢复过程中正确加载各类数据。


四、注意事项:备份路径的权限控制

在数据备份过程中,权限控制至关重要,确保备份数据的安全性和完整性。以下是一些常见的权限控制策略:

1. 应用数据隔离

每个应用的备份数据存储在独立的备份恢复目录中,其他应用无法访问,符合沙箱数据隔离的原则。开发者在配置备份路径时,应避免备份包含敏感信息的文件,以免被系统误读或误用。

2. 访问权限限制

在 HarmonyOS Next 系统中,应用备份和恢复功能需要系统权限授权。开发者应合理使用 BackupExtensionAbility 中的权限,避免过度调用备份和恢复功能,防止影响系统资源。

3. 恢复目录的正确管理

在数据恢复时,需确保恢复目录和应用沙箱目录的映射一致性。任何在应用沙箱中存储的数据都需要在恢复时完整还原到相应的路径,防止出现数据丢失或路径错误。


总结

HarmonyOS Next 中的备份文件夹和数据目录映射机制为应用的数据备份与恢复提供了强大的支持。通过合理配置应用沙箱和恢复目录的映射关系、备份策略和权限控制,开发者可以灵活管理应用的数据备份路径,确保数据在不同设备和系统环境下的安全恢复。这些机制不仅提升了用户的数据安全性,也为设备升级和数据迁移提供了有效的技术支撑。

鸿蒙开发环境搭建故障根因与手术刀级修复指南 鸿蒙应用开发环境本质上是一套高度耦合的工具链系统,其稳定性依赖Node.js、JDK、SDK等组件的精确版本协同。由于采用构建时锁定(Build-time Locking)机制,版本微调即引发ABI不兼容、模块加载失败或语法解析异常等底层问题。技术价值在于保障ArkTS编译确定性与HAP包构建一致性,广泛应用于金融、车载、IoT等对发布可靠性要求严苛的工业级场景。本文聚焦DevEco Studio启动失败、Git诊断误报、SDK下载卡99%、模拟器白屏等高频真实故障,结合Windows/macOS/Linu 阅读详情

相关推荐

Windows页目录自映射方案

自映射的解释!!!!!!!!!!!!!!!!!!!!!!!!!!

鸿蒙手机文件目录

鸿蒙手机文件目录

pf_1308108803的博客 5293

Versal - 从零构建Petalinux 2024.2 AI边缘计算平台(VD100+SDT+JupyterLab实战)

本文详细介绍了如何从零开始,基于AMD Versal VD100开发板和Petalinux 2024.2构建AI边缘计算平台。内容涵盖开发环境搭建、Petalinux工程创建与配置、SDT新流程实战、启动SD卡制作,并最终集成JupyterLab与Conda,打造出开箱即用的交互式AI开发环境,帮助开发者快速进行算法验证与部署。

5f4d3s2a1q的博客 487

Docker目录映射

docker常用命令: docker ps // 查看所有正在运行容器 docker stop containerId // containerId 是容器的ID docker ps -a // 查看所有容器 $ docker ps -a -q // 查看所有容器ID docker stop $(docker ps -a -q) // stop停止所有容器 docker rm $(docker ps -a -q) // remove删除所有容器 docker restart 容器id //重启容器 dock

m0_67393827的博客 9435

离散数学期末复习笔记【精华版】

文章目录前言一、????理逻辑1. 命题逻辑2. 等值演算3. 主合取范式、主析取范式4. 【题】推理证明5. 辖域、自由变元、约束变元二、????合1. 环和、环积,幂集,笛卡尔乘积三、 ????????关系1. 自反、对称、传递2&3. 合成运算,逆关系、闭包4. 哈斯图、上下界、偏序5. 等价关系、划分四、????1. 幺元(么元、单位元)、零元、逆元,半群、群、阿尔贝群、独异点、循环独异点2. 【题】由表判断3. 【题】证明五、????论1. 简单图、平凡图、多重图、子图、补图、出度、入度、

林大夕可的博客 17万+

一文详解数据仓库、数据湖、湖仓一体和数据网格

本文对数据仓库、数据湖、湖仓一体、数据网格四个技术概念进行了辨析,并对它们的优势和局限给出了对比介绍。

oOBubbleX的博客 2593

docker对已经启动的容器添加目录映射(挂载目录)

docker新增目录映射/挂载

qq_39198749的博客 5万+

一键转换B站M4S缓存为MP4:无需FFMPEG命令的简易工具

本文介绍了一款专为B站用户设计的绿色工具,可将缓存的M4S视频和音频文件一键转换为通用MP4格式。该工具完全图形化操作,无需学习复杂的FFmpeg命令,解决了普通用户处理B站缓存视频的痛点。文章详细讲解了从下载、配置到转换的完整流程,并提供了常见问题排查与安全使用建议,帮助用户高效、安全地管理离线视频内容。

joy55的博客 479

HarmonyOS--数据存储

如上图,不要被图片吓到,这里我们只需要了解我们要操作的只是Preference这个名字叫用户首选项的东西,我们通过它对轻量级信息进行数据的读写,就是那么简单,不需要了解到它是如何工作的,只需要会用它。恭喜你顺利学会了使用首选项存储数据!!!首选项的作用当然不止存储数据的功能,想要很好的运用它,需要去做更多的Demo去理解它的妙处和关系型存储的区别。首次应用启动实例关系型数据库基于SQLite组件,适用于存储包含复杂关系数据的场景,这里需要我们拥有最基础的MYSQL基础。

2301_79900717的博客 1499

MDF和DHF、DMR、DHR三者差异?注册与备案文件?医疗器械产品技术要求编写指导原则

定义:设计历史文档(DHF ) 指的是描述某医疗器械成品设计过程的有关记录。内容:DHF包括设计开发活动的所有记录。从最初的策划、客户需求、设计输入,设计输出、设计验证、设计确认、所有的设计评审,设计转换,以及设计变更相关的所有记录。均属于DHF的一部分。要求:各制造商应为每个类型的器械建立并保持设计历史文件。设计历史文件应包含或引用必要的记录,以证实设计符合经批准的设计计划和法规的要求。

学海无涯的专栏 9109

利用PaddleOCR识别增值税发票平台验证码(开箱即用)

下面直接讲解利用paddleocr识别的思路,为什么使用paddleocr,因为paddle中集成了较好的ocr文字识别模型,开箱即用即可,废话不多说,剑指主题,识别思路步骤如下。

码王吴彦祖的博客 5543

Windows 全局换鸿蒙字体:PE 与 FontLink 实战

本文介绍了将Windows系统字体全局替换为鸿蒙字体的完整教程。该方法分为两个阶段:首先在PE环境下替换系统字体文件,然后在Windows系统中手动安装剩余字体并修复字体链接。文章详细说明了字体目录准备、替换流程设计(PE阶段仅替换文件,Windows阶段完成注册),并强调操作风险,建议提前备份。通过分阶段处理系统字体和普通字体,确保字体面板能完整识别所有字重,最终实现系统界面、浏览器等场景下中英文显示的协调统一。教程适合有PE使用经验的用户参考,不建议在生产环境中直接使用。

分享 Windows 系统部署、镜像封装、终端管理、故障排查与运维自动化实践,涵盖 Sysinternals、PowerShell 和 AI 工具应用。以真实案例梳理排查思路与解决步骤,让运维经验清晰、可复用。 8万+

DeepSeek邮件管理全攻略

DeepSeek邮件助手是一款高效的邮件处理工具,提供智能分类、撰写、回复和任务自动化功能。通过API调用或多智能体系统,它能自动分类邮件意图、生成专业回复并优化邮件内容。核心功能包括智能过滤、会议安排和任务提醒,支持与主流邮箱服务集成。提供精准提示词模板,帮助用户快速生成得体邮件,提升工作效率。适合个人和企业使用,通过简单配置即可实现邮件处理自动化。

Genio_Wang的博客 180

Flutter 三方库 cli_util 的鸿蒙化适配指南 - 打造顶层工具链、环境自动感知、鸿蒙级命令行开发利器

cli_util是一个专注于命令行实用功能的库。它提供了一套简洁的 API 用于定位当前运行环境的 Dart SDK 位置,以及根据操作系统规范定位用户配置目录(Application Config Home)。在鸿蒙端,它是开发脚手架工具、环境预检脚本(Doctor)或数据导出工具的必备包,保障了工具链在不同运行环境下的一致性与规范性。cli_util通过读取运行时的系统环境变量与进程路径,动态推导出关键的工程资产位置。graph LRcli_util虽简,却是实现鸿蒙端“全流程自动化”必不可少的一环。

Leo 4244

【Matlab光伏功率预测】基于GRU门控循环单元的光伏功率时间序列预测(附MATLAB代码)

【Matlab光伏功率预测】基于GRU门控循环单元的光伏功率时间序列预测(附MATLAB代码)

k8291121的博客 1099

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

9个很酷的cmd命令,2024年最新12道HarmonyOS鸿蒙高级面试题

45、mem.exe:显示内存运用情况(如果直接运行无效,可以先管理员身份运行命令提示符,在命令提示符里输入mem.exe>d:a.txt 即可打开d盘查看a.txt,里面的就是内存运用情况了。当然什么盘什么文件名可自己决定。技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

2401_84159688的博客 677

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

鸿蒙平台的状态管理同样支持类似的响应式更新,HarmonyOS ArkTS API 24通过@State和@Prop装饰器实现数据的双向绑定,完成React Native鸿蒙跨平台双向数据同步机制

在React Native中开发鸿组件(这里指的是鸿蒙(HarmonyOS)组件),你需要了解鸿蒙开发的基础以及如何在React Native项目中集成鸿蒙应用。鸿蒙OS是由华为开发的一个分布式操作系统,主要用于其智能设备,如手机、平板、智能手表等。首先,你需要熟悉鸿蒙OS的开发环境设置和基本开发流程。React Native本身主要用于Harmony和Harmony平台的开发,但你可以通过以下几种方式将鸿蒙应用集成到React Native项目中:A. 使用WebView。

czhm57的博客 601

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Flutter 三方库 pcloud_sdk 鸿蒙适配指南 - 实现工业级云存储同步、在 OpenHarmony 上打造极速云端资产管理实战

在鸿蒙(OpenHarmony)生态的办公、协作或备份类应用中,如何高效且安全地接入全球化的云端存储服务是一个重要课题。pCloud 以其卓越的同步速度与高级别加密策略备受推崇。pcloud_sdk为 Dart 开发者提供了一套完整的 API 映射层,支持对云端文件执行秒级的上传、下载及权限审计。本文将为你深度实战这套 SDK,并分享在鸿蒙端实现大文件断点续传与安全凭证持久化的工程经验。pcloud_sdk凭借其深厚的协议积累,成为了鸿蒙开发者连接广阔云端的稳健桥梁。它不仅仅是一个简单的 API 搬运工。

2609_95049439的博客 4324

Flutter鸿蒙跨平台开发实践:思维录音机应用解析

在移动开发领域,跨平台框架的演进始终围绕“一次编写,多端运行”的核心诉求展开。Flutter凭借自绘渲染引擎,不依赖系统原生UI控件,从而在适配新兴操作系统时具备天然优势。鸿蒙生态作为覆盖手机、平板、车机等多元设备的全场景系统,其应用开发正需要这种高效复用能力。通过Platform Channel机制,Flutter可以桥接鸿蒙原生能力,实现音频采集、权限管理、生命周期映射等功能。语音转写、本地数据库、全文搜索等高频技术需求,也在跨平台架构下得到统一解决。思维录音机项目正是这一技术路径的典型实践,它利用Fl

weixin_34152820的博客 384

HarmonyOS 6.1.1 Image Kit WebP元数据技术深度解析:设计素材管理行业的元信息嵌入与版权溯源场景实践

HarmonyOS 6.1.1 Image Kit新增WebPMetadata类,实现WebP图像元数据的读写与批量处理,突破设计素材管理中标签丢失、版权难溯、格式碎片化等痛点。基于四层分层架构与单例、工厂等设计模式,构建高效可扩展的素材管理应用,支持元数据持久化嵌入,推动设计资产“随文件流动”,为行业数字化转型提供系统级技术支撑。

LYQ2583的博客 214

Flutter 3.47 鸿蒙三方库适配实战:path_provider 应用目录兼容层

Flutter 3.47 下,path_provider 适配鸿蒙 OHOS 2.1.6-ohos.2 版本,通过 PathProviderPlugin 实现应用目录映射:cacheDir 和 filesDir 分别对应临时与文档目录,library 及外部存储等无等价接口,返回不支持。插件基于 Ability 生命周期管理 Context,确保上下文有效。业务代码无需分平台处理,兼容性良好。验证通过,构建生成 entry-default-unsigned.hap。

2501_93573294的博客 1905

为什么ReinaManager如此轻量:Tauri 2 + React + Rust技术选型完整拆解

ReinaManager 是一款轻量级的 galgame / 视觉小说管理器,基于 **Tauri 2 + React + Rust** 技术栈构建。它把多源元数据抓取、游戏库管理、游玩时长统计、存档备份等复杂功能,装进了一个体积小巧、内存占用低的桌面应用里。这篇文章就来完整拆解:这套技术选型为什么能让它如此轻量。 ## ReinaManager 是什么 ReinaManager 是一款面向

gitblog_00976的博客 1014

高德地图自己录制导航声音备份与恢复指南

手机应用数据备份与恢复是移动端数据管理的基础课题:很多自定义内容并非单一文件,而是“音频片段 + 本地数据库索引”的组合,只有两者一致,应用才能正确识别。对高德地图自己录制导航声音而言,这类自定义语音包没有可随意重下的服务器副本,清理存储、换机或卸载重装后极易丢失;安卓受 Android/data 权限限制,iOS 则依赖加密整机备份。工程实践上,整机备份胜在完整,文件抓取胜在精细可迁移,云端同步只能作补充。换机迁移、系统升级、存储清理等场景,都应先确认应用数据是否包含语音包并做多重归档。理解文件与索引的对

weixin_34068198的博客 335

【愚公系列】软考中级-软件设计师 031-操作系统(文件管理)

操作系统中的文件管理是指操作系统对文件的创建、存储、删除和访问等操作的管理。文件是操作系统中的基本单位,用于存储和组织数据。文件管理的主要任务包括以下几个方面:文件的创建和删除:操作系统提供了创建和删除文件的功能。创建文件时,需要指定文件的名称、大小和权限等信息。删除文件时,操作系统会释放文件所占用的存储空间。文件的存储和组织:文件在存储设备上占据一定的空间。操作系统负责将文件存储在适当的位置,并且维护文件的结构和组织。文件的访问和读写:操作系统提供了对文件的读取和写入操作。

愚公智库 8万+

Flutter for OpenHarmony 实战:文件夹详情页开发与踩坑记录

跨端开发框架 Flutter 在国产操作系统 OpenHarmony 生态中逐步落地,成为复用现有代码、降低多端维护成本的重要路径。其核心原理在于通过适配层将 Flutter 引擎运行于 OpenHarmony,UI 渲染与 Dart 逻辑保持不变,仅需替换平台壳子并对接系统能力。这一架构的技术价值在于业务代码高度复用,尤其适合 CRUD 密集型应用。在实际工程中,开发者常需借助 Platform Channel 桥接沙箱文件读写、数据库初始化等原生能力,并结合 SQLite 进行聚合查询与轻量缓存设计,以

weixin_28025327的博客 238
上一篇: 如何在 HarmonyOS Next 中实现自定义 BackupExtensionAbility
下一篇: 在 HarmonyOS Next 中使用 Core File Kit 管理应用文件
SameX-4869
博客等级 码龄17年 3354粉丝 657原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值