我有一个带有元标记的 iPad 网络应用程序:
<meta name="apple-mobile-web-app-capable" content="yes">
当我从主页打开应用程序(支持网络应用程序的版本)或在 Mobile Safari 中输入地址时,localStorage 的内容不同。我已通过打印 location.href 确认地址相同。
使用 Mobile Safari 时对 localStorage 所做的所有更改都会反映在支持 Web 应用的版本中,但在支持 Web 应用的版本中所做的更改不会反映在 Mobile Safari 版本中。
域是相同的,localStorage 应该是相同的。世界上到底发生了什么?这可以解决吗?
更新 - 解决方案:根据接受的答案中的建议 #2(强制用户处于全屏模式),我添加了这段代码:
if(("standalone" in window.navigator) && !window.navigator.standalone)
window.location = "instructions.html";
因此,如果您使用的是支持独立模式的浏览器,并且您未处于独立模式,请重定向到一个页面 (instructions.html),该页面向用户展示如何将应用程序添加到主屏幕。
感谢大家的意见!