这是一篇从前博客迁移来的文章。
tags:
- Android
- 搞机
- 翻车
categories:
- 搞机
- 翻车
前几天我用 SwiftBackup
这款软件备份数据,备份完后发现,外置 SD 卡
中的 App 经过备份就无法启动了(读取其私有数据 I/O Error),可能是备份的锅。最终修复完成,这里记录一下修复过程,供大家参考。
0x00 把应用移到内置存储 #
Android 系统的移动 App 功能对存储的空间占用要求非常苛刻,经常会出现 “存储空间不足” 的错误,所以我们采用命令行来移动软件。
参考 https://stackoverflow.com/questions/23280804/how-to-move-spcific-apps-to-from-sd-card-using-adb 。
首先,获得 APK 所在路径:
$ pm path <package>
第二步,移动到内置存储:
$ pm install -i <installer> -f -r <path> # path 就是刚刚得到的路径
这里简单说一下 installer。默认情况下,这个 installer 代表安装这个 app 的软件(如 Google Play),在移动完成后这个 installer 是空的,这可能给我们带来不便,所以我们需要在这里恢复 installer 为 Google Play(或其他)。(注:Google Play 商店包名是 com.android.vending
)。
这样,我们就完成了 APK 的移动,请确认权限和 AppOps 是否恢复,然后进行下一步。
0x01 恢复数据 #
然后即可简单地用 SwiftBackup
恢复以前备份的数据了,具体操作就不说了,恢复完成即可正常使用。