如何在卸载时强制删除应用程序数据(Android)?



在某些Android设备(至少是Galaxy S7(中有一个奇怪的功能:它们在重新安装应用程序时恢复数据(例如SQLite数据库(。此行为会中断我的应用程序,因为数据应该在卸载期间删除。

手动卸载应用程序时,如何强制Android完全删除所有这些数据?

您必须禁用备份AndroidManifest.xml

android:allowBackup="false"
tools:replace="android:allowBackup"

注意:如果您使用任何第三方library使用android:allowBackup="true",那么它会发生冲突并给出错误。要解决此问题并override设置,您还必须添加tools:replace="android:allowBackup".

对于您的问题,这很简单。只需将以下行添加到应用的清单文件的<application>标记即可。

android:allowBackup="false"

这使得应用程序的数据在卸载时不会被保存。

这是一个隐私问题。如果应用包含敏感数据,建议禁止用户备份应用。可以访问备份文件(即android:allowBackup="true"时(,即使在无根设备上也可以修改/读取应用程序的内容。

解决方案 - 在清单文件中使用android:allowBackup="false"

阅读这篇文章以了解更多信息:https://resources.infosecinstitute.com/android-hacking-security-part-15-hacking-android-apps-using-backup-techniques/

原文: https://stackoverflow.com/a/43475593/5304075

最新更新