以下问题:我正在运行基于Cordova的混合应用程序并使用IndexedDB作为我的数据存储。在iOS上一切都很好,但是在Android上存在问题,在某些设备上,这些数据在新安装应用程序后正在恢复。我尝试了两种不同的方法来清理数据:在每个存储上手动执行.clear()并告诉IndexedDB使用.deleteDatabase()方法完全删除数据库。之后我打开了Chrome开发工具并查看了应用程序数据 - >所有数据都被删除...直到删除并重新安装应用程序!它不是正在恢复的最新数据......来自11月16日的一些数据。我完全不知道这些数据来自哪里。
供您参考:我在Android 7.0上破坏了应用程序,并使用基于Chromium 52的Crosswalk 23提供。
祝你好运
斯文
答案 0 :(得分:2)
自Android 6.0起,android:allowBackup
属性默认设置为true
,这就是卸载应用时数据仍然存在的原因。
您可以通过Android的manifest
文件或您的cordova应用程序的config.xml
进行更改。
这是您从config.xml设置属性的方法:
<config-file platform="android" parent="/manifest">
<application android:allowBackup="false"></application>
</config-file>