在离子应用中获取网络状态

时间:2016-07-26 08:56:30

标签: angularjs cordova ionic-framework ngcordova

当用户离线时,我想在控制器中获取网络状态并导航到s状态。

我已经安装了ng-cordova。

这是我的代码:

.controller('MapCtrl', function($scope, $state, $rootScope, $cordovaNetwork) {

  $rootScope.$on('$cordovaNetwork:offline', function() {
    $state.go("error");
    alert("offline")
  });
  $rootScope.$on('$cordovaNetwork:online', function() {
    alert("online")
  });
})

我在线和离线时都没有收到提醒。我的错是什么?

1 个答案:

答案 0 :(得分:3)

使用Cordova插件添加cordova-plugin-network-information 然后window.Connection用于检查可用的互联网。

if(window.Connection){
    if(navigator.connection.type == Connection.NONE) {
      $state.go("error");
        alert("offline")
       }else{
            console.log(navigator.connection.type);
              alert("online")
        }
    }