我正在使用移动 Safari 和“添加到主屏幕”功能开发一个 HTML5 网络应用程序,以便在 iPad2 上离线使用。我能够在桌面 Chrome 中使用 cache.manifest 文件实现离线缓存,但无法使其在 iOS 移动 Safari 中工作。
该应用程序在线时在 iPad 上运行流畅,但一旦我离线,我会收到以下错误消息:“MyApp 无法打开,因为它未连接到互联网”(在 iPad 上的“添加到主屏幕”视图中)和“Safari 无法打开页面,因为它没有连接到互联网”(在同一台 iPad 上的 safari 视图中)。
我在网上阅读了数百个故障排除/问题页面和清单教程,试图解决这个问题,但没有一个建议有效。在阅读了很多关于此功能的内容后,它应该很容易实现,但我在这里。
这是迄今为止我所做/尝试/使用但没有成功的总结。我已经使用 cache.manifest 和 manifest.appcache 变体尝试了以下所有方法,但没有成功,但为简单起见,我将只记录 cache.manifest 案例:
我正在使用本地安装在 Win10 x64 上的最新 Xampp Apache for Windows 服务器进行开发和测试
目标设备是运行 iOS 8.4 版和移动 Safari 8 版的 iPad2。我的完整用户代理字符串是:
Mozilla/5.0 (iPad; CPU OS 8_4 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12H143 Safari/600.1.4
Run Code Online (Sandbox Code Playgroud)在 Xampp 中,我更新了 httpd.conf 文件以包含 .manifest 的正确 MIME 类型 …
web-applications mobile-safari offline-caching ios html5-appcache