我在Android设备中卸载并安装了离子v1应用程序后,$ localStorage数据已存在

时间:2017-01-26 05:01:21

标签: android cordova ionic-framework cordova-plugins taco

我正在开发离子v1移动应用程序。当我从中卸载应用程序时 Android设备,$localstorage中保存的数据在我再次安装应用后已经存在。

我也在使用cordova-plugin-crosswalk-webview版本2.2.0

其他信息:

  Cordova CLI: 6.3.1
  Gulp version:  CLI version 3.9.1
  Gulp local:   Local version 3.9.1
  Ionic Framework Version: 1.1.1
  Ionic CLI Version: 2.1.1
  Ionic App Lib Version: 2.1.1
  Node Version: v4.4.1

我很乐意感谢你的任何帮助。

谢谢!

1 个答案:

答案 0 :(得分:6)

这是一个奇怪的但也是一个常见的问题。

如果你有一个注销按钮,你可以这样做:

$scope.logout = function(){
  $window.localStorage.clear();
  $ionicHistory.clearCache();
  $ionicHistory.clearHistory();
};

另一种解决方案是,当应用程序在app.js中启动时,您可以添加以下代码:

  $window.localStorage.clear();
  $ionicHistory.clearCache();
  $ionicHistory.clearHistory();

然后使用新内容更新localstorage。

如果用户卸载应用程序(没有注销),则无法捕获离子中的卸载事件。

另一方面,Android 6有自动备份(如果版本<6,则localstorage持久化数据?你试试吗?)。

尝试在manifest.xml中设置/添加android:allowBackup="false"android:fullBackupContent="false"

可以在应用程序的manifest.xml中的<application/>中找到这些属性。