【问题标题】:Test offline browsing with Android Chrome使用 Android Chrome 测试离线浏览
【发布时间】:2016-11-14 00:33:17
【问题描述】:

我正在尝试使用 Service Worker 构建一个离线数据持久性 Web 应用程序。我设法让它在我的笔记本电脑 Chrome (51) 上运行,当我通过 Chrome DevTools - Network 选项卡模拟离线时,它会加载缓存的文件并显示离线消息。 我将应用程序上传到 github 以确保它可用于 https (https://mguardos.github.io/index.html)

但是,当我尝试使用我的 Android Chrome (Nexus 5 - Android 6.0.1 - Chrome 51) 对其进行测试时,应用程序在联机时加载正常,但如果我设置平面模式并重新加载页面,浏览器不是检查 service worker 而是直接显示离线消息

“你离线了。 您的设备离线。 尝试: ... ERR_INTERNET_DISCONNECTED"

我是否必须在我的 Android Chrome 中启用任何选项才能让 Service Worker 工作?

感谢任何提示

PS(已编辑):Android 6.0.1 上的 Opera 37 也会出现同样的问题。但是,Chrome 和 Opera 的注册服务在后台正常进行(通过注册方法成功完成后的警报进行验证)

PSS:上面的链接试图成为一个非常基本的例子,将服务工作者与 AppCache 结合起来,以检索 localStorage 和 IndexedDB 数据,因此任何建设性的批评者都会非常感谢在原始问题之上

【问题讨论】:

    标签: offline-caching service-worker offline-mode


    【解决方案1】:

    Chrome 中的问题似乎是它需要将条目 '/' 添加到要为 Service Worker 缓存的文件中。我添加了该条目,我可以看到应用程序在我的 Android 离线时运行良好

    不过,Opera 的问题还是一样,我什至可以用https://airhorner.com 应用程序复制它

    • 只需打开 Opera(确保之前清理过缓存)
    • 转到https://airhorner.com(应用程序加载正常 - 虽然它听起来不)
    • 激活飞行模式
    • 重新加载页面(应用程序仍在加载,因为它正在从本地缓存中读取)
    • 关闭浏览器或直接转到其他地址
    • 然后回到https://airhorner.com(出现我在原问题中添加的离线消息)

    我将继续我的调查,并可能会为 Opera 浏览器创建一个新问题,因为这个问题已经在 Chrome 中得到解答

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-29
      • 2019-02-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多