【Android】安卓APP(包含app数据)备份-(Backup_script)换机必备
  • 侧边栏壁纸
    • 累计撰写 97 篇文章
    • 累计收到 202 条评论
    • 栏目
    • 页面
    • 功能

    【Android】安卓APP(包含app数据)备份-(Backup_script)换机必备

    时间煮雨-Master
    2025-09-25 / 0 评论 / 4 阅读 / 正在检测是否收录...

    Backup_script 数据备份脚本

    Stars Download Release License Channel

    概述

    创作该脚本是为了使用户能够更加完整地备份/恢复应用数据。支持设备必须符合以下条件:Android 8+ 及 arm64 架构。

    由于本人是台湾人,所以发布的版本为繁体版(针对中国大陆系统,脚本会自动将自身翻译为简体中文)。

    优势

    • 数据完整:在更换系统之后,原有的数据全部保留,无需重新登陆或者下载额外数据包。
    • 支持备份 SSAID:可完美备份 LINE 等应用。
    • 支持备份应用权限:可备份运行时权限与 Ops 权限。
    • 易操作:简单几步即可备份应用完整数据!
    • 限制少:不限制机型,可跨安卓版本。
    • 功能强:可备份恢复 Split APK。
    • 算法多:目前支持的压缩算法有 tar(默认)和 zstd。
    • 速度快:即使使用 zstd 压缩算法,速率依旧快速(对比钛备份、Swift Backup)。
    • 脚本自带 Tools 完整性校验与压缩包校验

    如何使用

    请认真阅读以下说明,以减少不必要的问题。

    推荐工具:MT 管理器。若使用 Termux,则请勿使用 tsu。

    !!!以下操作皆须 ROOT 权限!!!

    1. 首先将下载 github下载地址 到的脚本解压到任意目录后,可以看到以下目录结构。
      警告! 不论备份或是恢复都必须保证 tools 目录的存在与完整性,否则脚本失效或是二进制调用失败。

      脚本结构与说明:

      backup_script.zip

      ├── tools
      │ ├── Device_List
      │ ├── bc
      │ ├── busybox
      │ ├── classes.dex
      │ ├── cmd
      │ ├── jq
      │ ├── find
      │ ├── keycheck
      │ ├── soc.json
      │ ├── tar
      │ ├── tools.sh
      │ ├── zip
      │ └── zstd
      ├── backup_settings.conf <--- 脚本默认行为设置
      └── start.sh <--- 执行脚本

    2. 然后执行 start.sh 脚本,使用音量键选择 “生成应用列表”。等待脚本输出提示结束,此时会在当前目录生成一个 appList.txt,这就是你当前安装的所有第三方应用(脚本会屏蔽预装应用,可于 backup_settings.conf 设置需要备份的包名)。
    3. 现在打开生成的 appList.txt,根据里面的提示操作后保存,这样你就设置好了需要备份的软件。
    4. 最后找到 backup_settings.conf 打开后根据提示设置并保存,再执行 start.sh,使用音量键选择 “备份应用”。备份结束后会在当前目录生成一个以 Backup_压缩算法名 命名的文件夹,里面就是你的软件备份。
    5. 将这个文件夹整个保存到其他位置,刷完机后复制回手机,直接执行 Backup_压缩算法名/start.sh 即可恢复备份的所有数据。
    6. 恢复时,同样道理,里面也有个 appList.txt,使用方法跟第 3 步骤一样,不需要还原的应用条目删除即可。
    7. 另外,进入备份好的文件夹,找到单独应用的文件夹,里面有 backup.shrecover.sh 可以用于单独备份与恢复该应用。

      重要提示:

    8. 脚本执行过程中请留意红色字眼提示有无任何错误。
    9. 使用恢复脚本时,留意恢复结束后是否提示应用存在 SSAID。假设提示存在 SSAID,请在恢复后立刻重启设备以便套用 SSAID。
    10. 假设恢复 SSAID 后立刻打开应用,会导致 SSAID 套用失败,因为 Android 会产生一个新的 SSAID,这会导致应用卡白屏或是提示需要重新登录。SSAID 是判断应用是否换过环境与设备的依据之一,保持一致可以减少诸如提示异地登录或需要重新登录验证的情况。


      附加说明:如何恢复

    11. 找到恢复文件夹内的 appList.txt 打开,编辑列表(删除不想恢复的应用条目),保存退出。
    12. 找到 start.sh,授予 ROOT 权限,使用音量键选择 “恢复备份”,然后等待脚本结束即可。

      关于 start.sh 的其他功能:

    13. “重新生成应用列表”功能:可用于刷新 appList.txt 内的列表。使用时机为当你删除列表内的任何应用备份时,或者是恢复备份提示列表错误时。
    14. “终止脚本”功能:用于突然想要终止脚本或是意外操作时使用。因为脚本无须后台的特性不能使用常规手段终止,故此另外写了一个终止功能。


      关于如何更新脚本?

      目前有三种更新方法:

    15. 手动更新:将下载的备份脚本 ZIP 压缩包(不解压缩)直接放到脚本任意目录(不包括 tools 目录内)的任意地方,然后执行任何脚本即可,脚本将提示更新。
    16. 自动检测更新:此备份的任何脚本在执行时均会联网检测脚本版本,当有更新时会自行提示与下载,根据脚本提示操作即可(需要在 backup_settings.conf 中设置 update=1 时生效)。脚本联网仅作为检查更新用途,无任何非法操作。
    17. 下载目录检测:将下载的压缩包(不解压缩)直接放在 /storage/emulated/0/Download 目录下,脚本会自动检测更新,并按照提示操作即可。


      关于反馈

      如果使用过程中出现问题,请携带截图并详细说明问题,通过以下渠道反馈:

    18. 酷安:@落叶凄凉TEL
    19. QQ 群:976613477 (很少上,尽量来 TG)
    20. Telegram: https://t.me/yawasau_script


      答疑

      问:一个 Shell 脚本内为什么有 dex?

      答: dex 用来实现脚本难以实现的功能。目前 SSAID 备份恢复、备份恢复运行时权限与 Ops 权限、下载与访问 GitHub API 来检查脚本更新、列出用户应用名称与包名、繁体转简体均为 dex 的功能实现。感谢 Android-DataBackup by XayahSuSuSu。


      常见问题

      Q1:批量备份大量提示失败怎么办?
      A1: 退出脚本,删除 /data/backup_tools 目录,再重新备份一次。

      Q2:批量恢复大量提示失败怎么办?
      A2: 退出脚本,按照上面同样操作。如果还是错误,请通过反馈渠道建立 issue,帮你排除错误。

      Q3:微信/QQ 能不能完美备份 & 恢复数据?
      A3: 不能保证,有的人说不能,有的人说能,所以备份时会有提示。建议用你信赖的备份软件针对微信/QQ 再备份一次,以防丢失重要数据。

      Q4:为什么部分应用备份很久?例如王者荣耀、PUBG、原神、微信、QQ。
      A4: 因为连同样软件的数据包(如 OBB 文件等)都一起备份了,例如原神数据包可能超过 9GB,当然需要较长时间,恢复时也是同理,还需要解压缩数据包。

      Q5:脚本每次备份都是全新备份吗?
      A5: 脚本备份时会比对上次备份文件的大小,如果有差异就备份,反之则忽略备份以节省时间。


      Test

      铭谢贡献

      感谢以下各位的贡献与支持:

    21. 臭批老k (kmou424):提供部分与验证函数思路
    22. 屑老方 (雄氏老方):提供自动更新脚本方案
    23. 胖子老陈 (雨季骚年)
    24. XayahSuSuSu (XayahSuSuSu):提供 App 支持, dex 支持

    0

    评论 (0)

    取消