# 开发者自验证

## 简介

在开发的过程中，当开发者完成所需[适配流程](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/adaptation-process)后，可导入提前准备好的APK应用沙箱数据，自验证HarmonyOS应用数据迁移适配结果。

在HarmonyOS应用适配完成并上架到华为应用市场之后，开发者仍需要将终端设备从HarmonyOS升级到HarmonyOS NEXT，[端到端验证](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/e2e-verification)应用数据迁移结果。

## 开发者自验证流程

### 应用沙箱数据准备

请自行构造APK应用沙箱数据，并将构造好的APK应用沙箱数据按指定格式打包成"{APK包名}.zip"。
> 说明
>
> 在打包'{APK包名}.zip'文件时，必须使用UTF-8编码格式进行压缩，否则压缩中文命名的文件时，文件名会出现乱码。

|**APK应用沙箱目录**|{APK包名}.zip目录|
|:-----------------------------------------|:-------------|
|/data/user_de/{userId}/{APK包名}/|{APK包名}/de|
|/data/user/{userId}/{APK包名}/|{APK包名}/ce|
|/data/media/{userId}/Android/data/{APK包名}/|{APK包名}/A/data|
|/data/media/{userId}/Android/obb/{APK包名}/|{APK包名}/A/obb|

打包好的"{APK包名}.zip"解压后，要满足包含一个"APK包名"根目录，根目录下包含对应沙箱目录文件夹，文件结构如下。

```text
─com.demo.demo
    ├─A
    │  ├─data
    │  └─obb
    ├─ce
    └─de
```

1. 将打包好的"{APK包名}.zip"推送到外部存储设备（U盘或者移动硬盘），连接终端设备和外部存储设备。

   > 说明
   >
   > 当前终端设备支持识别NTFS格式的外部存储设备，请使用NTFS格式的外部存储设备连接终端设备。
2. 在终端设备中，打开"文件管理"应用，长按选中外部存储设备中的"{APK包名}.zip"。

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/bd/v3/-GD1UH_MQ2m_Dg8zloxmbg/zh-cn_image_0000002779091847.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=7E1C5BA7446A8FEBB8D18D0AFF73C8D65C9010C7794894B838743AE37E504708)

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/71/v3/LbOMnEgZT3CwHCvDc69ocQ/zh-cn_image_0000002778931989.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=0D4FB61ABABDFF2047285678DA829E89EB2D62AF479990AE2710A977B4402F9D)
3. 单击"复制"按钮，将数据复制到文件管理器的"下载"目录下，作为后续自验证的测试数据源。

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/39/v3/rT4-Uk3qRH29vtQQ-FYQyw/zh-cn_image_0000002749332906.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=304A6C70A1136B39CB954B760E71E6685952AE54E77EE15D21DFA05C3CE98E8A) ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/4f/v3/7idmL8urQ9qTyoRTcd2IQA/zh-cn_image_0000002749492790.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=D512183C96301E1C776E6056125F6A342FAB6ED88FB9F7AC221C4FF61B930F03)

## HarmonyOS NEXT上模拟验证应用数据迁移

在应用沙箱数据准备好之后，开发者需要先完成所需[适配流程](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/adaptation-process)，再模拟验证应用数据迁移。

1. 安装目标HarmonyOS应用到终端设备。

   > 注意
   >
   > "迁移调试"工具"205.0.0.110"之前的版本，仅支持调试release签名的应用。
   >
   > 从"205.0.0.110"版本开始，"迁移调试"工具仅支持调试debug签名的应用。请开发者升级到最新版本，并使用debug签名的包验证。
   >
   > "迁移调试"工具版本查看方式：**设置** >**应用和元服务** >**MigrateTool** >**版本**
2. 打开迁移调试工具。迁移调试工具图标如下图所示：

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/4e/v3/LfCwfcwJQ--v9LEX2vzIOA/zh-cn_image_0000002779091849.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=C2B771B2AC629AA72D9B49536B9D45203AF703813B90C942721CDCB9D85C9D86)
3. 在"迁移工具"应用的首页，开发者通过单击"选择"按钮进入设备文件管理界面。

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/ff/v3/6KKTu8OeRiK0FyAiXs1g7w/zh-cn_image_0000002778931991.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=64C5D503F14D85AFE1C95FBFB13F48E070FD93050FDB896B0AF172F6391CC636)
4. 在设备文件管理界面，单击"浏览"按钮，进入浏览手机内部存储界面。单击"我的手机"，根据之前导入数据的路径，进入手机存储的相应路径，选择需要导入的APK应用数据zip包。

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/1d/v3/sLbF_A_dQwOfZ9muG1UDuQ/zh-cn_image_0000002749332908.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=53759839E08A9AB613342C958F38A0C218AD81E09F362DD7A7FFC0FFF40C75C7) ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/59/v3/_PYvSkOHTTWxXyyx7awD_A/zh-cn_image_0000002749492792.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=63E81033F745180E73A99B1EC24CFCCBC412CBAA36A86A572252419A4C666909)
5. 单击需要导入的APK应用数据zip包后，会返回"迁移调试"工具首页，已选择的需要导入的APK应用数据会显示在第一栏中。选择好需要导入的APK应用数据后，单击"请输入应用包名"。

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/76/v3/cLQKsF_3TJyOxkyiVIj9VQ/zh-cn_image_0000002779091851.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=4138904A8446472CACAB675E8E62711EB7CC72B08814CCCCFCF5EF2C3840D976)
6. 输入需要验证的目标HarmonyOS应用包名，目标HarmonyOS应用会显示在"迁移调试"工具首页的第二栏中。

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/8b/v3/I0qp6TdWQaSZ8wmzPdIIdA/zh-cn_image_0000002778931993.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=5C11AAE75394465132C8AF4E343345F1A5DF7263D27F3019C86370F87049BBF1)

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/3d/v3/plJif2JzTJS4UMcoJITARQ/zh-cn_image_0000002749332910.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=EED1E638C3AA3E1F9C448FEA513F7126BF2BEB1D09FE0FD3200F8D8C9A23090E)
7. 选择需要导入的APK数据和目标HarmonyOS应用后，单击"启动迁移"按钮，开始模拟数据迁移，页面切换为数据优化界面，应用数据迁移的进度在数据迁移进度条中显示。

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/16/v3/rMTuOZHcTWOEl9UFeTRWxA/zh-cn_image_0000002778931993.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=EB02EF22DC5EE285D3B9DE4857CCBCD7F04C57D539CF8512257367D4CAC5C170) ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/6f/v3/wzLp_roKT4SfIlqsBL2kcA/zh-cn_image_0000002749492794.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=541AD6C97BDE05B13ACB04C8CF548794CD4AF131F478F06A6EC2CA9C6E1E1C78)
8. 应用数据迁移完成之后，数据迁移进度条上方显示"已优化完成"，进度更新为100%。数据迁移成功的情况下，界面中无异常提示。单击"完成"按钮，切换回"迁移调试"工具首页，在下方的"迁移日志"版块中显示详细迁移信息。result字段表示数据迁移结果，costTime字段表示数据迁移时长（单位ms）。

   > 注意
   >
   > **1、此处的数据迁移成功，仅表示"备份恢复框架"接入成功，APK应用的数据成功迁移到"备份恢复框架"需要的指定目录。开发者需要通过从应用的沙箱中获取数据并解析，判断应用适配"备份恢复框架"的结果**。
   >
   > **2、单个应用数据迁移执行超过十五分钟，超过设定的单个应用最长数据迁移时间，会导致任务执行失败。开发者需要优化应用BackupExtensionAbility的代码实现，在十五分钟内完成应用数据迁移。**

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/79/v3/yVHHxzfzQTucuS1-1IYshQ/zh-cn_image_0000002779091853.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=9DB60211654873C22FF6A5C67E8DD58BBA861E6B61E5917069A971DB7CF1F781) ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/1f/v3/pe-l5t3zQ7yyxqbfcy8adg/zh-cn_image_0000002778931995.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=7530D6C343AE97A3C237171FA9D84B48B7561D84E217AC235169FC0BA18967C2)
9. 数据迁移失败的情况下，应用图标上方的状态显示"优化失败"。单击"完成"按钮，切换回"迁移工具"应用首页，在下方的"迁移日志"版块中显示详细迁移信息。result字段表示数据迁移结果，costTime字段表示数据迁移时长（单位ms）。

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/44/v3/AB47TxHdT0CVjRyJLO2kuQ/zh-cn_image_0000002749332912.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=2B8B9273E9D844C8C3B34BD2086885C148F7F1F2533907B8ABD088D373AED7EE) ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/0e/v3/riA50Lc5S7uTdrBCVNYADg/zh-cn_image_0000002749492796.png?HW-CC-KV=V1&HW-CC-Date=20260929T121658Z&HW-CC-Expire=31536000000&HW-CC-Sign=6CD0786FD5B5E8479BC6EFEAF0EDA66CDFB27AA49CE71C8DF5DF5B4100B3AF8E)

