如何在不丢失数据的情况下卸载android apk?

时间:2012-10-05 15:01:58

标签: android backup storage apk

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

我忘了提及我通过.bat文件执行命令。

4 个答案:

答案 0 :(得分:4)

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

只需启用adb访问权限,然后使用此命令:

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

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

一旦你有这个文件,假设包名保持不变,你应该可以简单地使用命令

adb restore /backup/myAppBackup.ab

恢复数据。

现在,我不知道某些,一旦你更改了密钥,这将会有效,但我相当肯定它只依赖于软件包名称,所以签名密钥不重要。更多信息here

答案 1 :(得分:2)

批量友好版本。

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

答案 2 :(得分:0)

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

答案 3 :(得分:-1)

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

如果您的设备未植根,则无法保留数据。