首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

HarmonyOS Next开发学习手册——设备升级应用数据迁移适配指南(一)

  • 25-02-22 07:01
  • 2884
  • 7915
blog.csdn.net

使用场景

终端设备从HarmonyOS 3.1 Release API 9及之前版本(简称HarmonyOS)升级到HarmonyOS NEXT Developer Preview1及之后版本(简称HarmonyOS NEXT)时,原HarmonyOS中运行的APK应用,升级后需要切换为HarmonyOS NEXT中的HarmonyOS原生应用(简称HarmonyOS应用)。APK应用的部分数据需要转换并迁移到指定位置后,才能被HarmonyOS应用访问。HarmonyOS NEXT提供了“数据迁移框架”和“备份恢复框架”,为开发者提供应用数据的迁移和转换能力。开发者完成适配,APK应用切换为HarmonyOS应用后,可继承原APK应用中适配HarmonyOS应用的数据。

如下图所示,应用需要的数据,包含云端服务器中的数据,本地应用沙箱中的数据和本地公共媒体库中的数据。为了应用的数据可以继承,开发者需要保证云端数据定义兼容APK应用和HarmonyOS应用,确保系统升级后同一帐号下的数据可识别。

数据迁移机制

应用沙箱数据迁移机制

终端设备从HarmonyOS升级到HarmonyOS NEXT后,APK应用沙箱数据被搬迁到中间目录。针对应用沙箱数据,HarmonyOS NEXT提供“数据迁移框架”统一调度应用数据迁移任务。

应用数据迁移任务需要执行的步骤包括:应用安装,数据迁移和数据恢复。

  1. 应用安装步骤:

    1. “数据迁移框架”向华为应用市场发送HarmonyOS应用下载和安装请求。
    2. 华为应用市场下载并安装HarmonyOS应用。
  2. 数据迁移步骤:

    在HarmonyOS应用安装完成之后,“数据迁移框架”将应用沙箱数据从中间目录搬迁到备份恢复目录。

  3. 数据恢复步骤:

    1. 在应用数据搬迁到备份恢复目录后,“数据迁移框架”向“备份恢复框架”发送应用数据恢复请求。
    2. “备份恢复框架”拉起应用的“BackupExtensionAbility”独立进程,启动应用数据恢复。
    3. 应用通过“BackupExtensionAbility”从备份恢复目录加载APK应用的数据,处理后保存到HarmonyOS应用沙箱中,完成应用数据恢复。
    4. “备份恢复框架”在应用数据恢复完成后,清空备份恢复目录。

后续HarmonyOS应用通过访问HarmonyOS应用沙箱获取应用的数据。

公共媒体库中数据迁移机制

公共媒体库中的数据,在终端设备从HarmonyOS升级到HarmonyOS NEXT后,会整体搬迁直接继承。应用可以使用HarmonyOS NEXT提供的API,访问公共媒体库中的数据。

适配流程

适配流程包括:适配准备、应用适配、开发者自验证、应用上架和端到端验证。

**图1 **适配流程图

1. 适配准备阶段

在适配准备阶段,开发者需要分析清楚HarmonyOS中APK应用和HarmonyOS NEXT中HarmonyOS应用的数据范围和差异。

在开发之前,需要通过OTA升级的形式,将终端设备升级到HarmonyOS NEXT Developer Preview1。

2.1 应用适配

在适配准备工作完成后,进入应用适配阶段。开发者需要在HarmonyOS应用的代码中,实现“BackupExtensionAbility”,使应用接入到“备份恢复框架”中,完成应用数据的转换和迁移。在“BackupExtensionAbility”中需要进行适配,从备份恢复目录下,加载APK应用数据,将需要迁移的数据处理后,保存到HarmonyOS应用沙箱中。

当前指导(应用数据迁移适配指导) 将指导开发者在设备升级场景下接入“备份恢复框架”。更多“备份恢复框架”的资料可以参考: 应用接入数据备份恢复

注意:

应用的“BackupExtensionAbility”执行完后,“备份恢复框架”会清空备份恢复目录,开发者请在应用的“BackupExtensionAbility”执行结束前,完成所有所需数据的转换和迁移。

后续HarmonyOS应用通过访问HarmonyOS应用沙箱获取应用的数据。

备份恢复目录如下表中所示:

备份恢复目录
/data/storage/el1/base/.backup/restore/{APK包名}/de/
/data/storage/el2/base/.backup/restore/{APK包名}/ce/
/data/storage/el2/base/.backup/restore/{APK包名}/A/data/
/data/storage/el2/base/.backup/restore/{APK包名}/A/obb/

HarmonyOS应用沙箱目录请参考 应用沙箱目录 。

2.2 开发者自验证

HarmonyOS NEXT Developer Beta1及之后版本,开发者需要联系华为方技术支持人员申请“迁移调试”工具,模拟进行数据迁移验证。或通过“华为开发者联盟官网”->“支持”, 在线提单 方式获取。

HarmonyOS NEXT Developer Beta1之前版本,开发者可以通过系统内置“迁移调试”工具,模拟进行数据迁移验证。

3. 应用上架

HarmonyOS应用适配成功后,在进行端到端验证之前,需要将HarmonyOS应用上架到华为应用市场。HarmonyOS应用上架指导请参考: 发布HarmonyOS应用指导

4. 端到端验证

在HarmonyOS应用上架到华为应用市场之后,华为方技术支撑人员会为开发者推送回退版本。如果终端设备为HarmonyOS NEXT,开发者需要将终端设备回退到HarmonyOS,在HarmonyOS中使用APK应用生成数据。应用数据准备完成后,请通过OTA升级形式,将终端设备升级到华为方提供的HarmonyOS NEXT。验证HarmonyOS NEXT中的HarmonyOS应用是否成功继承原APK应用的数据。

鸿蒙全栈开发全新学习指南

有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以要有一份实用的鸿蒙(HarmonyOS NEXT)学习路线与学习文档用来跟着学习是非常有必要的。

针对一些列因素,整理了一套纯血版鸿蒙(HarmonyOS Next)全栈开发技术的学习路线,包含了鸿蒙开发必掌握的核心知识要点,内容有(ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、WebGL、元服务、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、OpenHarmony驱动开发、系统定制移植等等)鸿蒙(HarmonyOS NEXT)技术知识点。

本路线共分为四个阶段:

第一阶段:鸿蒙初中级开发必备技能

在这里插入图片描述

第二阶段:鸿蒙南北双向高工技能基础:gitee.com/MNxiaona/733GH

第三阶段:应用开发中高级就业技术

第四阶段:全网首发-工业级南向设备开发就业技术:gitee.com/MNxiaona/733GH

《鸿蒙 (Harmony OS)开发学习手册》(共计892页)

如何快速入门?

1.基本概念
2.构建第一个ArkTS应用
3.……

开发基础知识:gitee.com/MNxiaona/733GH

1.应用基础知识
2.配置文件
3.应用数据管理
4.应用安全管理
5.应用隐私保护
6.三方应用调用管控机制
7.资源分类与访问
8.学习ArkTS语言
9.……

基于ArkTS 开发

1.Ability开发
2.UI开发
3.公共事件与通知
4.窗口管理
5.媒体
6.安全
7.网络与链接
8.电话服务
9.数据管理
10.后台任务(Background Task)管理
11.设备管理
12.设备使用信息统计
13.DFX
14.国际化开发
15.折叠屏系列
16.……

鸿蒙开发面试真题(含参考答案):gitee.com/MNxiaona/733GH

鸿蒙入门教学视频:

美团APP实战开发教学:gitee.com/MNxiaona/733GH

写在最后

  • 如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙:
  • 点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。
  • 关注小编,同时可以期待后续文章ing?,不定期分享原创知识。
  • 想要获取更多完整鸿蒙最新学习资源,请移步前往小编:gitee.com/MNxiaona/733GH

鸿蒙开发学习资料领取!!!
微信名片
注:本文转载自blog.csdn.net的OpenHarmony_小贾的文章"https://blog.csdn.net/maniuT/article/details/140661729"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2024 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top