如何在ionic 3应用程序中获取有关Internet连接的信息?
我安装了插件:
$ ionic cordova plugin add cordova-plugin-network-information
$ npm install --save @ionic-native/network
并将import { Network } from '@ionic-native/network';
作为提供者添加到应用的模块中
控制台未显示错误, 我在带铬的笔记本电脑上进行了测试。
pages / home.ts
import { Component } from '@angular/core';
import { NavController, LoadingController, ToastController } from 'ionic-angular';
import { RestProvider } from '../../providers/rest/rest';
import { Network } from '@ionic-native/network';
import { AlertController } from 'ionic-angular';
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
constructor(
public navCtrl: NavController,
public LoadingController: LoadingController,
private rest: RestProvider,
public network: Network,
public toast: ToastController,
public alertCtrl: AlertController,
) {
this.network.onConnect().subscribe(()=> {
console.log('Connected Constructor');
});
this.network.onDisconnect().subscribe(()=> {
console.log('Disonnected Constructor');
});
}
ionViewDidLoad() {
this.network.onConnect().subscribe(()=> {
console.log('Connected ionViewDidLoad');
});
this.network.onDisconnect().subscribe(()=> {
console.log('Disonnected ionViewDidLoad');
});
}
}
答案 0 :(得分:1)
谢谢!!!
是的,我更改了代码
constructor(public toast: ToastController, private network: Network) {
this.network.onConnect().subscribe(()=> {
this.toast.create({
message: "DDDD",
duration:6000
}).present();
});
this.network.onDisconnect().subscribe(()=> {
this.toast.create({
message: "213123",
duration:6000
}).present();
});
}
并且可以在设备上运行
但是现在我有另一个问题,
应用程序运行后如何获取连接状态?
(现在我在更改连接后获得状态)
答案 1 :(得分:0)
Cordova插件在浏览器中不起作用。您必须在要测试的设备上运行该应用程序。另外,如果您使用this.network.type
,则可以查看设备上的网络类型,但是在浏览器的控制台上,您会收到警告:
本机:尝试调用Network.type,但Cordova不可用。确保包含cordova.js或在设备/模拟器中运行。
确认您将无法在浏览器上使用cordova插件。