用Electron创建跨平台应用(六)检测当前是否连接互联网

在渲染进程中, Online and offline 事件检测,是通过标准 HTML5 API 中 navigator.onLine 属性来实现的。 脱机时 (从网络断开), navigator.onLine 属性将返回 false, 除此之外都返回true 。 由于所有其他条件都返回 true, 因此必须警惕信息误报, 因为我们不能保证 true 的情况下 Electron 一定可以访问 internet。 例如这种情况下,软件运行在一个虚拟网络适配器始终为“connected”的虚拟机中。 因此,如果你想确保 Electron 真实的网络访问状态,你应该开发额外的检测方法。

渲染进程加入代码:

  // 监听在线/离线
  window.addEventListener('online', () => {
    let opt = {
      title: "有网了",
      body: "快点继续工作吧",
      icon: "./img/icon.png"
    };
    new window.Notification(opt.title, opt);
  })
  window.addEventListener('offline', () => {
    let opt = {
      title: "网断了",
      body: "网没了可以好好休息下了",
      icon: "./img/icon.png"
    };
    new window.Notification(opt.title, opt);
  })
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容