модуль подключения не работает с использованием Nativescript - PullRequest
0 голосов
/ 28 февраля 2019

Я следую этому учебнику и пишу в app.component.ts этот код.

    export class AppComponent implements OnInit {
    isConnection: boolean;
    constructor() {}
    ngOnInit() {
        const myConnectionType = getConnectionType();
        switch (myConnectionType) {
            case connectionType.none:
                this.isConnection= false;
                dialogs.confirm({
                    message: "Please, check Wifi",
                    okButtonText: "OK",
                }).then(result => {
                    console.log("Dialog result: " + result);
                });
                break;
            case connectionType.wifi:
                this.isConnection= true
                break;
            case connectionType.mobile:
                this.isConnection= false;
                dialogs.confirm({
                    message: "Please, check Wifi",
                    okButtonText: "OK",
                }).then(result => {
                    console.log("Dialog result: " + result);
                });
                break;
            case connectionType.ethernet:
                this.isConnection= false;
                dialogs.confirm({
                    message: "Please, check Wifi",
                    okButtonText: "OK",
                }).then(result => {
                    console.log("Dialog result: " + result);
                });
                break;
            default:
                break;
        }
    }
}

Я не понимаю, почему не работает, когда я отключаю WiFi?

В app.component.html

<page-router-outlet></page-router-outlet>

В AndroidManifest / xml я положил <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

Есть идеи, пожалуйста?

1 Ответ

0 голосов
/ 01 марта 2019

Ответ на ваш вопрос "почему не работает, когда я отключаю WiFi?"нас "You have to monitor the connection".В вашем коде вы просто проверяете тип соединения при загрузке приложения, но вам также необходимо следить за , если вы хотите проверить, когда Wi-Fi не подключен.

ngOnInit() {
connectivity.startMonitoring((newConnectionType: number) => {
      switch (newConnectionType) {
        case connectivity.connectionType.none:
          this._userService.connectionType = AppConstants.INT_CONN_NONE;
          console.log('Connection type changed to none.');
          break;
        case connectivity.connectionType.wifi:
          this._userService.connectionType = AppConstants.INT_CONN_WIFI;
          console.log('Connection type changed to WiFi.');
          break;
        case connectivity.connectionType.mobile:
          this._userService.connectionType = AppConstants.INT_CONN_MOBILE;
          console.log('Connection type changed to mobile.');
          break;
        default:
          break;
      }
    });
}
...