Мы разрабатываем приложение Ionic v3 с использованием Angular.Здесь мы сталкиваемся с проблемой того, что мы (иногда) теряем подключение к Интернету после входа или выхода из нашей рабочей сети Wi-Fi и перехода с / на сотовые данные.После этого мы не можем получить какие-либо данные из нашего веб-API.Даже если мобильное устройство подключено к сети, невозможно подключить Интернет из нашего приложения.
Следующий код показывает, как мы наблюдаем изменения в сети:
import { Network } from '@ionic-native/network';
export enum ConnectionStatus {
Online,
Offline
}
@Injectable()
export class NetworkHelper {
private status: BehaviorSubject<ConnectionStatus> = new BehaviorSubject(ConnectionStatus.Offline);
constructor(private platform: Platform, public network: Network, public eventCtrl: Events) {
this.platform.ready().then(() => {
this.initializeNetworkEvents();
}
}
public initializeNetworkEvents() {
this.network.onDisconnect().subscribe(() => {
if (this.status.getValue() === ConnectionStatus.Online) {
console.log('WE ARE OFFLINE');
this.eventCtrl.publish('network:offline');
}
});
this.network.onConnect().subscribe(() => {
if (this.status.getValue() === ConnectionStatus.Offline) {
console.log('WE ARE ONLINE');
this.eventCtrl.publish('network:online');
}
});
}
}
Единственный способ до сих порвосстановить это либо включить и выключить режим полета или перезапустить приложение вручную.Это, конечно, неприемлемо для пользователя.
Кто-нибудь сталкивался с такой же проблемой и знает, как ее решить?
Спасибо и наилучшими пожеланиями Тимон