离子 2 中的线程



我正在尝试创建一个线程来继续检查应用程序的网络状态,以便它可以发送到我的远程数据库。我如何使用离子原生在离子 2 中处理这个问题。

此致敬意

首先你需要安装网络插件

ionic plugin add cordova-plugin-network-information

此处的莫尔信息

然后,您需要一个提供商来检查网络状态

import { Injectable } from '@angular/core';
import { Platform } from 'ionic-angular';
import { Network } from 'ionic-native';
@Injectable()
export class NetworkService {
onDevice: boolean;
constructor(
    private platform: Platform,
) {
    this.onDevice = this.platform.is('cordova');
}

isOnline(): boolean {
    if (this.onDevice && Network.type !== 'none') {
        return true;
    } else {
        return navigator.onLine;
    }
}
}

现在你可以随心所欲地使用它

如果你遵循这个:

https://github.com/GoogleChrome/samples/blob/gh-pages/service-worker/read-through-caching/index.html#L95

您将能够注册随 Ionic 2 应用程序提供的服务工作者.js该服务工作者。

在这里,您可以找到有关服务工作线程如何工作的更多文档:

https://developers.google.com/web/fundamentals/getting-started/primers/service-workers

您可能需要将@armin和这个响应结合起来。

安装:

ionic plugin add cordova-plugin-network-information

然后:

  1. 注册服务辅助角色.js
  2. 在将攻击您的服务器的服务工作进程。

玩这样的东西(这段代码需要添加到你的 ionic 应用程序中,而不是在你的 service-worker 中.js(:

import { Network } from 'ionic-native';
//watch network for a disconnect
let disconnectSubscription = Network.onDisconnect().subscribe(() => {
    console.log('network was disconnected :-(');
    // Warn your service worker about this and create a queue or
    //something to notify your server when you get connection again.
});
//watch network for a connection
let connectSubscription = Network.onConnect().subscribe(() => {
    console.log('network connected!');
    // We just got a connection but we need to wait briefly
    // Notify to your service-worker.js about this and hit your server.
});

我想你想要这样的东西。

相关内容

  • 没有找到相关文章

最新更新