在 iOS7 上,当尝试通过 JavaScript 访问 HTML5 localStorage 对象时,停止执行 Javascript。它在以前的 iOS 版本中工作正常。 该应用程序在全新安装和启动时运行完美。但是后来,我关闭应用程序并再次启动,它不起作用并且无法访问 localStorage。
要禁用 cookie,我使用了以下代码:
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyNever];
要访问 localStorage,我使用了以下代码:
CGRect rect = self.view.frame;
UIWebView* webView = [[UIWebView alloc] initWithFrame:rect];
[self.view addSubview:webView];
[webView loadHTMLString:@"<script>alert('hello world');alert(localStorage);</script>" baseURL:nil]
我浏览了 iOS7 文档,但找不到与此问题相关的任何更新。有没有人也遇到过这个?请分享有关此的任何信息,这将非常有帮助。有什么解决方法吗?
谢谢
最佳答案
虽然这是一篇较旧的帖子,但是 fwiw ...
不确定我是否遇到过这个问题。在多个使用 iOS6/7 的项目中使用过带和不带 cookie 的 localStorage。
提供的 loadHTMLString 对我来说有点奇怪……所以我尝试了这个……
[webView stringByEvaluatingJavaScriptFromString:@"alert('hello world');alert(localStorage);"];
...工作正常,并按预期显示 localStorage 对象,禁用 cookie。
在 sim 和设备上测试,iOS7。
关于如果禁用 Cookies,iOS7 无法访问 HTML5 localStorage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18932147/