在使用os 10的iphone / ipad中,LocalStorage无法正常工作

时间:2017-03-31 07:33:25

标签: angularjs cordova ionic-framework

我在使用os版本10及更高版本的iphone / Ipad中遇到localstorage问题。

场景就是这样。

第一次当我打开应用程序时,localstorage键值为null。那时我正在为相应的键分配值。

第二次当我打开应用程序时,localStorage键仍为null,再次为该对应键分配值。

第三次打开应用程序时,我从localStorage获得了价值。如果我重复上面的时间步骤,每次我都能从本地存储中获得价值。

这里问题是第二次只能使用localStorage。

以下是我正在使用的技术 IBM Mobile First V7.1 科尔多瓦V3.7 离子V1.2.4和角度1.4

请在下面找到在iphone& ipad with os 9(10以下)

if(localStorage && $window.localStorage.getItem("isFirst") ==  "first"){ 
  alert("Data available"); 

}else{ 
 alert("LocalStorage is empty");               
$window.localStorage.setItem("isFirst", "first"); 

}

获得“数据可用”alet两次而不是一次。

1 个答案:

答案 0 :(得分:2)

已知iOS上的LocalStorage无法预测。重启应用程序时,某些LocalStorage会被删除(甚至没有Cordova或MFP),有些则没有。当设备内存不足时,iOS可能会清除LocalStorage。但这并不是iOS 10所特有的。

这不是MFP或Cordova的问题,它可能就是iOS的工作方式。

要可靠地保存数据并使用加密,您可以使用JSONStore。更多细节在这里:

1)JSONStore Tutorial

2)Overview