MacOS WebView及Neutralino应用中IndexedDB数据是否受7天清除规则影响?
Neutralino macOS WebView 中 IndexedDB 是否受 Safari 7天数据清除规则影响?
直接给结论:不会受这个7天规则影响。
原因说明:
- Neutralino在macOS上使用的是
WKWebView,但作为桌面应用嵌入的WebView,其存储逻辑和Safari浏览器里的普通网页完全隔离。 - Safari的7天未访问清除规则仅针对浏览器中打开的普通网站数据,这是苹果针对网页隐私的限制措施。而桌面应用的WebView,其IndexedDB数据属于应用沙箱的一部分,归你的应用专属管理,不属于Safari的网站数据池。
- 从存储路径来看,这些数据会保存在应用的沙盒目录中(类似
~/Library/Containers/<你的应用Bundle ID>/Data/Library/WebKit/WebsiteData),只有用户卸载应用、手动清除应用数据,或者系统因存储严重不足触发清理时才可能被删除,和Safari的7天自动清理机制无关。
实操建议:
- 可以快速做个验证测试:用Pouch/Loki写入数据后,7天不启动应用,再打开检查数据是否留存,就能彻底确认。
- 若仍有顾虑,MVP阶段可先直接用IndexedDB快速上线招募测试,同时提前编写基于Neutralino
filesystemAPI的存储适配接口,后续根据测试反馈再决定是否切换到文件存储,既不耽误进度,也留好后路。
内容的提问来源于stack exchange,提问作者Greg Bulmash
相关产品推荐
相关产品推荐

