卸载应用程序时 SQLite 不会擦除
SQLite does not erase when uninstalling app
我有问题。
我正在使用这个插件:https://github.com/xpbrew/cordova-sqlite-storage
当我卸载应用程序然后重新安装时,我注意到它仍在加载旧文件。
卸载APP时,应该把所有的东西都删掉,包括数据库,对吗?
我是不是做错了什么?
我的代码是这样的:
var db;
try {
document.addEventListener('deviceready', function() {
db = window.sqlitePlugin.openDatabase({name: 'database.db', location: 'default'}, function(db) {});
});
console.log("SQLITE OK");
}catch (err) {
alert('Erro:' + err);
}
对于有同样问题的人。在@Pawel 的帮助下关注解决方案。
在 config.xml 文件中,会有一个名为 <platform name
="android">
的标签。将下面的代码放在里面。
<edit-config file="AndroidManifest.xml" mode="merge" target="/manifest/application" xmlns:android="http://schemas.android.com/apk/res/android">
<application android:allowBackup="false" />
</edit-config>
是的,如果使用 Cordova,您可以通过在 AndroidManifest.xml 文件或 android 平台部分下的 config.xml 文件中将 android:allowBackup
设置为 false 来禁用它.
另外一件事,android 的设计方式使得这仅在您处理调试 apk(未签名)而不是发布 apk 时发生。
在发布的 apk 中,卸载后不会在用户的手机中保留任何备份。
当我说“发布 Apk”时,它是一个签名的 APK。
我有问题。
我正在使用这个插件:https://github.com/xpbrew/cordova-sqlite-storage
当我卸载应用程序然后重新安装时,我注意到它仍在加载旧文件。
卸载APP时,应该把所有的东西都删掉,包括数据库,对吗?
我是不是做错了什么?
我的代码是这样的:
var db;
try {
document.addEventListener('deviceready', function() {
db = window.sqlitePlugin.openDatabase({name: 'database.db', location: 'default'}, function(db) {});
});
console.log("SQLITE OK");
}catch (err) {
alert('Erro:' + err);
}
对于有同样问题的人。在@Pawel 的帮助下关注解决方案。
在 config.xml 文件中,会有一个名为 <platform name
="android">
的标签。将下面的代码放在里面。
<edit-config file="AndroidManifest.xml" mode="merge" target="/manifest/application" xmlns:android="http://schemas.android.com/apk/res/android">
<application android:allowBackup="false" />
</edit-config>
是的,如果使用 Cordova,您可以通过在 AndroidManifest.xml 文件或 android 平台部分下的 config.xml 文件中将 android:allowBackup
设置为 false 来禁用它.
另外一件事,android 的设计方式使得这仅在您处理调试 apk(未签名)而不是发布 apk 时发生。 在发布的 apk 中,卸载后不会在用户的手机中保留任何备份。 当我说“发布 Apk”时,它是一个签名的 APK。