如何在不丢失数据的情况下卸载安卓 apk



有没有办法在apk上使用adb卸载,但使数据持久化?我丢失了应用程序的原始密钥,现在我想更新它,但不会丢失以前的数据。所以我需要先卸载它以使用新密钥添加新的apk。这可能吗?

忘了提到我正在通过.bat文件执行命令。

编辑:应该已经指定,以下内容仅适用于Android 4.0及更高版本。

只需启用adb访问,然后使用以下命令:

adb backup -noapk -f /backup/myAppBackup.ab com.yourapp.packagename

然后,您应该在根目录中存储一个文件(在Windows上,C:\或等效项)在名为"备份"的文件夹中。

拥有此文件后,假设包名称保持不变,您应该能够简单地使用该命令

adb restore /backup/myAppBackup.ab

以恢复数据。

现在,我不确定一旦您更改了密钥,这是否会起作用,但我相当确定它仅依赖于包名称,因此签名密钥无关紧要。更多信息在这里。

批处理友好版本。

My-make-clean.bat:
adb pull /data/data/com.blah.bla/file1 file1
adb pull /data/data/com.blah.bla/file2 file2
adb pull /data/data/com.blah.bla/file3 file3
...
adb uninstall com.blah.bla
adb install YourApkFile.apk

如果您的数据是公开存储的,则卸载后将保留,但如果您的数据是私有存储的,则卸载应用程序时将删除您的数据。

如果您的设备已植根,则可以访问包含应用程序数据的/data/<package_name>,并且可以对其进行备份。

如果您的设备未植根,则没有其他方法来保留数据。

相关内容

最新更新