【发布时间】:2016-05-24 19:59:10
【问题描述】:
我正在 Ionic 2 上开发一个应用程序,我想检查每个请求的互联网连接,即,我想在每次网络关闭或启动时接收即时消息。
我的简单项目将有:
第 1 页 - 主页(转到另一页的按钮)
第 2 页 - 另一页
为此,我正在使用 cordova 插件网络信息。来自 ionic 2 文档:
import {Network, Connection} from 'ionic-native';
// watch network for a disconnect
let disconnectSubscription = Network.onDisconnect().subscribe(() => {
console.log('network was disconnected :-( ')
});
// stop disconnect watch
disconnectSubscription.unsubscribe();
// 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
// before we determine the connection type. Might need to wait
// prior to doing any api requests as well.
setTimeout(() => {
console.log(Network.connection);
if (Network.connection === Connection.WIFI) {
console.log('we got a wifi connection, woohoo!');
}
}, 3000);
});
// stop connect watch
connectSubscription.unsubscribe();
问题是 Network.onConnect().subscribe(() 不检索任何内容。这是实现我目标的最佳方式吗?
【问题讨论】:
-
只是作为评论,根本不是答案,我认为网络插件对于这种检测并不真正可靠,因为您的用户实际上可能连接到没有连接的路由器并且仅因为有 wifi 链接处于活动状态,插件才会指示存在有效连接。我也在努力解决这个问题。