Ionic 3 Network от @ionic-native/network не возвращает статус подключения
Как получить информацию о подключении к интернету в приложении ionic 3?
Я установил плагин:
$ ionic cordova plugin add cordova-plugin-network-information
$ npm install --save @ionic-native/network
и добавил import { Network } from '@ionic-native/network';
в модуль приложения в качестве провайдера
Консоль не показывает ошибок, я тестировал ее на ноутбуке с хромом.
страниц /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');
});
}
}
2 ответа
Спасибо!!!
Это правда, я изменил свой код
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();
});
}
и это работает на устройстве,
но теперь у меня есть другая проблема,
как получить статус подключения после запуска приложения?,
(теперь я получаю статус после смены соединения)
Плагины Cordova не работают в браузере. Вам нужно будет запустить приложение на устройстве для тестирования. Кроме того, если вы используете this.network.type
вы сможете увидеть тип сети на устройстве, но на консоли в браузере вы получите предупреждение:
Родной: попытался вызвать Network.type, но Cordova недоступен. Обязательно включите cordova.js или запустите на устройстве / симуляторе.
Подтверждение, что вы не сможете использовать плагины Cordova в браузере.