手动恢复MIUI备份数据

同样可以使用下面的方式恢复小米助手备份的数据,不过需要把小米助手备份的数据从bak所属的文件夹里面取出来再进行操作

问题描述

自用小米10 pro经常死机,于是打算恢复出厂设置,恢复之前进行了备份,有40G的数据,并且将MIUI/back/AllBackup文件夹备份至了电脑
可是当重置手机后,发现备份文件夹中没有descript.xml文件,所以无法将文件夹放回原有目录进行数据恢复,新建备份再替换也不行,因为没有上述配置文件,于是就想办法从单独bak文件和新建descript.xml两种方式入手进行恢复

注意:有些软件无法恢复,比如我的Chrome就无法恢复,不知道是备份出错还是什么原因

注意:恢复的APP会覆盖当前已经安装的APP,特别是聊天记录会覆盖当前已有的,所以请恢复前再次备份!!!

逐个恢复方式

  1. 新建一个app的备份(只选择一个APP即可)
  2. MIUI/back/AllBackup/备份文件夹中复制已备份文件的名称(xxxxx.bak)
  3. 将想要恢复的BAK数据重命名为上面复制的文件名(xxxxx.bak)
  4. 替换MIUI/back/AllBackup/备份文件夹中的原有文件(xxxxx.bak)
  5. 回到数据恢复界面
  6. 点击恢复

批量恢复(descript.xml)

批量恢复的思路是,自己重新生成descript.xml文件

  1. 新建一个备份(只选择一个APP即可)
  2. 编辑MIUI/back/AllBackup/备份文件夹中的descript.xml文件
  3. <packages>...<packages>中添加需要恢复的app数据,数据格式如下
    <package><packageName>com.lingkou.leetcode</packageName><feature>-1</feature><bakFile>LeetCode(com.lingkou.leetcode).bak</bakFile><bakType>2</bakType><pkgSize>53026614</pkgSize><sdSize>0</sdSize><state>1</state><completedSize>53025792</completedSize><error>0</error><progType>0</progType><bakFileSize>0</bakFileSize><transingCompletedSize>0</transingCompletedSize><transingTotalSize>0</transingTotalSize><transingSdCompletedSize>0</transingSdCompletedSize><sectionSize>0</sectionSize><sendingIndex>0</sendingIndex>
    </package>
    

    上方代码为格式化之后的代码,请勿使用格式化后的代码进行添加,否则无法识别
    一键生成descript.xml的脚本见下一部分

  4. 将需要恢复的bak文件放置到MIUI/back/AllBackup/备份文件夹
  5. 回到数据恢复界面
  6. 点击恢复
  7. 如果数据恢复的时候卡在某一项,说明无法恢复,删除无法恢复和已经恢复的bak文件再重新恢复即可

descript.xml生成脚本

脚本环境:Python 3.8.5

#coding:utf-8
import osdef bak_files_path(dir):#修改一:检查下面5处是否需要修改,尤其是最后两个需要进行检查bakVersion = "2"brState = "3"autoBackup = "false"device = "cmi"miuiVersion = "V12.5.3.0.RJACNXM"outputFile = dir + "/descript.xml"f = open(outputFile, 'w', encoding="utf-8")content = ""for root, dirs, files in os.walk(dir):print("当前操作目录: ", root)for file in files:try:content += "<package><packageName>%s</packageName><feature>-1</feature><bakFile>%s</bakFile><bakType>2</bakType><pkgSize>53026614</pkgSize><sdSize>0</sdSize><state>1</state><completedSize>53025792</completedSize><error>0</error><progType>0</progType><bakFileSize>0</bakFileSize><transingCompletedSize>0</transingCompletedSize><transingTotalSize>0</transingTotalSize><transingSdCompletedSize>0</transingSdCompletedSize><sectionSize>0</sectionSize><sendingIndex>0</sendingIndex></package>" % (file[file.index("(") + 1: file.index(")")], file)finally:# 跳过不规则文件continuetemplate = "<?xml version='1.0' encoding='UTF-8' standalone='yes' ?><MIUI-backup><jsonMsg></jsonMsg><bakVersion>%s</bakVersion><brState>%s</brState><autoBackup>%s</autoBackup><device>%s</device><miuiVersion>%s</miuiVersion><date>1621923274164</date><size>61445281</size><storageLeft>192279056384</storageLeft><supportReconnect>true</supportReconnect><autoRetransferCnt>0</autoRetransferCnt><transRealCompletedSize>0</transRealCompletedSize><packages>%s</packages><filesModifyTime /></MIUI-backup>"%(bakVersion, brState, autoBackup, device, miuiVersion, content)f.write(template)f.close()# 只操作当前目录,不操作子目录print("descript.xml 生成完毕 ->", outputFile)return# 修改二:在此处修改目录
bak_files_path("G:/djzhao/Mi10Pro/AllBackup/20210525_094444")

使用方式:

  1. 检查是否需要修改bakVersionbrStateautoBackupdevicemiuiVersion(如果不知道修改成什么,新建一个备份,查看新建备份的descript.xml文件中这几个变量的值)
  2. 修改bak_files_path参数路径为你需要生成descript.xml文件的目录
  3. 运行此脚本
  4. 将备份数据所在目录所有内容(.bakdescript.xml文件)放置到MIUI/back/AllBackup/备份文件夹
  5. 回到数据恢复界面,打开名称为"5月25日 下午2:14"的备份记录
  6. 点击恢复

小米备份太不省心了。小米助手也是,太不好用!!!

很多网友说,小米售后欠我工资,哈哈哈。

小米MIUI备份/小米助手数据通过BAK进行恢复 | 生成MIUI的descript.xml文件进行数据恢复 | 手动恢复MIUI备份/小米助手数据相关推荐

  1. 小米备份descript.xml文件

    备份后 , 会在MIUI/backup/AllBackup 路径下产生具体日期的备份文件 . 打开其中一个如下: 会有一个未格式化的xml文件 使用编辑器打开格式化一下 , 方便查看 <?xml ...

  2. tinyxml2 数组_7.数据本地化CCString,CCArray,CCDictionary,tinyxml2,写入UserDefault.xml文件,操作xml,解析xml...

     数据本地化 A CCUserDefault 系统会在默认路径cocos2d-x-2.2.3\projects\Hello\proj.win32\Debug.win32下生成一个名为UserDef ...

  3. (3)[wp7数据存储] WP7 IsolatedStorage系列篇——通过XmlSerializer读写XML文件 [复制链接]...

    发表于 2012-5-17 15:51:07 |只看该作者 |倒序浏览 分享到: 本帖最后由 agameboy 于 2012-5-17 17:08 编辑 这一篇我们会通过XmlSerializer读写 ...

  4. 从MySql 数据库中导出数据并生成指定格式xml文件

    最近网站需要做数据迁移,需要我将网站的数据从mysql数据库中导出,并按照要求生成指定格式的xml文件. xml格式要求: 代码: package com.epsoft.gjjisp;import j ...

  5. 【数据匮乏场景下采用生成对抗网络的 光伏出力场景预测方法】

    背景介绍 生成对抗网络(GANs)是由两个网络组成的深度神经网络体系结构,它将一个网络与另一个网络相互对立(因此称为"对抗性"). 2014年,Ian Goodfellow和包括Y ...

  6. SNAP 处理Sentinel-1A数据(极化预处理,生成C2矩阵)

    参考文章:博主超级禾欠水[06-SNAP处理Sentinel-1 IW SLC数据(极化SAR预处理)] https://blog.csdn.net/lidahuilidahui/article/de ...

  7. vb怎么运用api对文件夹进行加密_[MIUI玩法篇 30] | 小米私密文件夹 深度揭秘

    在15年10月,私密文件夹功能正式进入MIUI开发版,让用户的小秘密不会再泄露.那么小米的私密文件夹功能是如何保证大家的小秘密呢?小编,今天带大家一起来了解其背后的原理和玩法. 1) 小米私密文件夹原 ...

  8. 小米删除了文件无网络无服务器,小米手机里的文件删了怎么恢复?超详细解决方法...

    手机里文件被删除后,虽然很心疼,但是却不知道要怎么找回数据,所以许多小伙伴们都错失了恢复误删文件的机会.今天我就以小米手机为例,和大家分享:安卓手机里的文件删除了怎么恢复的操作技巧. 如果是手机照片恢 ...

  9. oracle修改数据前备份,Oracle 之利用BBED修改数据块SCN—-没有备份数据文件的数据恢复...

    测试环境 OS:redhat6.6 oracle:12.1.0.2 BBED(OracleBlockBrowerandEDitor Tool),用来直接查看和修改数据文件数据的一个工具,是Oracle ...

最新文章

  1. 李飞飞高徒:斯坦福如何打造基于视觉的智能医院?
  2. opengl加载显示3D模型FBX类型文件)
  3. 我是这样写文字轮播的
  4. linux-shell命令之cat【输出档案内容】
  5. Java作业-多线程
  6. dede站怎么在首页调用单页的内容?
  7. maya多象限uv不显示_CG制作软件这么多,你都会哪些?
  8. JS特效之很牛叉的轮播图
  9. 有关无限极分类并排序问题
  10. bp神经网络预测股票价格,bp神经网络股价预测
  11. Pikachu靶机系列之目录遍历、任意文件下载、敏感信息泄露、越权
  12. 国内的点对点聊天工具鱼信Fishchat怎么用?
  13. npm发布vue组件库
  14. html 渐变背景色,渐变文字颜色
  15. java csv转owl_数据处理第2节:将列转换为正确的形状
  16. [锁 Lock] Lock lock = new ReentrantLock()之自增序列号
  17. 美通企业日报 | 广州塔开业至今迎游客近1557万人次;居然之家成功借壳上市
  18. 光流传感器 定位精度_基于多传感器的无人机定位和避障技术研究
  19. 阿里云和腾讯云服务器哪个好用?
  20. 计算机怎么设置网络,电脑怎么设置网络

热门文章

  1. [导入]干掉Google Base? 微软欲推Fremont服务
  2. 云上城之个服务器维护时间,云上城之歌开服时间表 官方最新开服情况
  3. 基于nose、使用django实现的自动化测试执行平台实现Rerun Failed功能。
  4. R语言 配对t检验,对子变量到底填在哪?t.test paired=TRUE???
  5. 记录安卓,IOS安装kali的办法
  6. Super Point 笔记(二)
  7. 百度网盘会员怎么买最便宜
  8. eureka访问出现红色字体:THE SELF PRESERVATION MODE IS TURNED OFF
  9. 介绍几种等待多线程任务执行完毕的方法
  10. echart x轴 倾斜,Echarts x轴字体倾斜