Example #1
0
 componentDidMount () {
   NetInfo.isConnected.addEventListener('change', this.setConnected)
   NetInfo.isConnected.fetch().done(this.setConnected)
   NetInfo.addEventListener('change', this.setConnectionInfo)
   NetInfo.fetch().done(this.setConnectionInfo)
   NetInfo.addEventListener('change', this.updateConnectionInfoHistory)
 }
 componentWillMount()
 {
     if(Platform.OS==='android')
     {
          BackAndroid.addEventListener('hardwareBackPress', this.onBackAndroid.bind(this));
     }
     NetInfo.addEventListener('change',this.handleConnectionInfoChange.bind(this));
     NetInfo.isConnected.addEventListener('change',this.handleConnectivityChange.bind(this));
     //获取网络当前信息
     NetInfo.fetch().done((connectionInfo) => {
         var info=this.switchConnectionInfo(connectionInfo);
         this.props.dispatch(ChangeNetInfo(info));
     });
     //获取网络当前连接状态
     NetInfo.isConnected.fetch().then((isConnected) => {
         this.props.dispatch(ChangeNetConnectStatus(isConnected));
     });
     //获取网络当前连接计费状态
     NetInfo.isConnectionExpensive().then((isConnectionExpensive) => {
         this.props.dispatch(ChangeNetExpensiveStatus(isConnectionExpensive));
     });
            
     Ionicons.getImageSource('ios-arrow-back', 30, '#fff').then((source) => this.setState({ backButtonImage: source }));
     Ionicons.getImageSource('md-menu', 30, '#fff').then((source) => this.setState({ drawerImage: source }));
 }
  componentDidMount() {
    //网络是否连接的监听
    //addEventListener(eventName:ChangeEventName,handler:Function)   
    //静态方法,用设置网络变化事件监听器,同时需要传入回调的处理方法
    NetInfo.isConnected.addEventListener(
      'isConnected',
      this._handleConnectivityChange
      );

    //网络连接转台变化的监听
    NetInfo.addEventListener(
      'statusChange',
      this._handleNetStatusChange
      );

    //检测网络是否连接
    NetInfo.isConnected.fetch().done(
      (isConnected) => {this.setState({isConnected});}
      );

    //检测网络连接信息,这只到state中,触发render函数
    NetInfo.fetch().done(
      (connectionInfo) => {this.setState({connectionInfo});}
      );
  }
Example #4
0
    componentWillMount() {
        // 设置网络状态监听
        // 这么写是没问题的,不过要注意,如果用在listener中,那么每次bind后返回的都是一个新的对象,所以是不合适的
        // NetInfo.addEventListener('statusChange', this._statusChange.bind(this));
        // 这么写需要全局that,或者箭头函数方式实现
        NetInfo.addEventListener('statusChange', this._statusChange);

        // 设置当前网络连接状态监听
        NetInfo.isConnected.addEventListener('connectChange', this._connectChange);

        // 获取当前网络的状态,比如 Wifi,cell(3G LTE) NONE
        NetInfo.fetch().done((connectionInfo) => {
            this.setState({
                connectionInfo: connectionInfo,
            })
        });

        // 获取当前网络的连接状态
        NetInfo.isConnected.fetch().done((isConnected) => {
            this.setState({
                isConnected: isConnected,
            })
        })

    }
export const doDeviceInfo = () => dispatch => {
  const deviceUniqueID = DeviceInfo.getUniqueID();
  const deviceName = DeviceInfo.getDeviceName();
  dispatch(gotDeviceInfo({ uniqueID: deviceUniqueID }));
  dispatch(gotDeviceUniqueID({ deviceUniqueID: `${DeviceInfo.getManufacturer()}-${deviceUniqueID}` }));
  dispatch(gotDeviceName({ deviceName }));


  // Network information
  const handleNetReachabilityChange = (reachability) => {
    if (reachability === 'none' || reachability === 'NONE') reachability = null;
    if (reachability === 'unknown' || reachability === 'UNKNOWN') reachability = undefined;
    if (reachability === 'cell') reachability = 'mobile';
    if (typeof reachability === 'string') reachability = reachability.toLowerCase();
    dispatch(gotDeviceInfo({ networkReachability: reachability }));
  };
  NetInfo.fetch().done(handleNetReachabilityChange);
  NetInfo.addEventListener('change', handleNetReachabilityChange);

  const handleNetConnectivityChange = (isConnected) => {
    dispatch(gotDeviceInfo({ networkConnectivity: isConnected }));
  };
  NetInfo.isConnected.fetch().done(handleNetConnectivityChange);
  NetInfo.isConnected.addEventListener('change', handleNetConnectivityChange);

  // UI variables
  var windowWidth = Dimensions.get('window').width;
  var windowHeight = Dimensions.get('window').height;
  dispatch(gotDeviceInfo({ windowWidth, windowHeight }));

  var pixelRatio = PixelRatio.get();
  dispatch(gotDeviceInfo({ pixelRatio }));

  if (NativeModules.SystemWindowAndroid) {
    NativeModules.SystemWindowAndroid.isTranslucentStatusBar((e) => {
      console.error('doDeviceInfo error', e);
    }, (translucentStatusBar) => {
      dispatch(gotDeviceInfo({ translucentStatusBar: translucentStatusBar }));
    });

    NativeModules.SystemWindowAndroid.isTranslucentActionBar((e) => {
      console.error('doDeviceInfo error', e);
    }, (translucentActionBar) => {
      dispatch(gotDeviceInfo({ translucentActionBar: translucentActionBar }));
    });

    NativeModules.SystemWindowAndroid.getStatusBarHeight((e) => {
      console.error('doDeviceInfo error', e);
    }, (statusBarHeight) => {
      dispatch(gotDeviceInfo({ statusBarHeight: statusBarHeight / PixelRatio.get() }));
    });

    NativeModules.SystemWindowAndroid.getActionBarHeight((e) => {
      console.error('doDeviceInfo error', e);
    }, (actionBarHeight) => {
      dispatch(gotDeviceInfo({ actionBarHeight: actionBarHeight / PixelRatio.get() }));
    });
  }
};
 componentDidMount() {
   NetInfo.isConnected.addEventListener(
     'change',
     this._handleConnectivityChange
   );
   NetInfo.isConnected.fetch().done((isConnected) => {
     (isConnected) => {this.setState({isConnected})};
   });
 }
 componentDidMount() {
     NetInfo.isConnected.addEventListener(
         'change',
         this._handleConnectivityChange
     );
     NetInfo.isConnected.fetch().done(
         (isConnected) => { 
             this.props.dispatch(UpdateConnectionState(isConnected));
          }
     );
 }
  componentDidMount() {
    AppState.addEventListener('change', this.onAppState)
    this.onAppState(AppState.currentState)

    NetInfo.addEventListener('change', this.onNetInfo)
    NetInfo.fetch().done((netInfo) => this.onNetInfo(netInfo))

    NetInfo.isConnected.addEventListener('change', this.onConnectivityChange)
    NetInfo.isConnected.fetch().done(this.onConnectivityChange)

    this._keyboardDidHide = Keyboard.addListener('keyboardDidHide', () => this.onKeyboard(false))
    this._keyboardDidShow = Keyboard.addListener('keyboardDidShow', (layout) => this.onKeyboard(true, layout))
  }
Example #9
0
  componentDidMount() {
    NetInfo.isConnected.addEventListener('change',
      (isConnected) => {
        this.handlesConnectivityChanged(isConnected);
      }
    );

    NetInfo.isConnected.fetch().done(
      (isConnected) => {
        AppConfig.DEBUG_ENABLED ? console.log('first load connection, connectivity: ', isConnected) : null;
        this.handlesConnectivityChanged(isConnected);
      }
    );
  }
Example #10
0
 checkConnectState(){
     NetWorkTool.addEventListener(NetWorkTool.TAG_NETWORK_CHANGE,this._handleConnectivityChange);
     //检测网络是否连接
     NetInfo.isConnected.fetch().done(
         (isConnected) => { this.setState({isConnected}); }
     );
 }
 componentWillUnmount() {
   AppState.removeEventListener('change', this.onAppState)
   NetInfo.removeEventListener('change', this.onNetInfo)
   NetInfo.isConnected.removeEventListener('change', this.onConnectivityChange)
   this._keyboardDidHide.remove()
   this._keyboardDidShow.remove()
 }
Example #12
0
  componentWillMount() {
    this.dataSource = new ListView.DataSource({rowHasChanged: (r1, r2) => r1 !== r2})

    this.props.loadOfflineItems()

    itemsRef.on('child_added', (snapshot) => {
      this.props.addItem(snapshot.val())
    })

    itemsRef.on('child_removed', (snapshot) => {
      this.props.removeItem(snapshot.val().id)
    })

    if (React.NativeModules.NetInfo) {
      NetInfo.isConnected.fetch().done(isConnected => {
        if (isConnected) {
          this.props.checkConnection()
        } else {
          this.props.goOffline()
        }
      })
    } else {
      this.props.checkConnection()
    }

    connectedRef.on('value', snap => {
      if (snap.val() === true) {
        this.props.goOnline()
      } else {
        this.props.goOffline()
      }
    })
  }
Notifications.configure = function(options: Object) {
	if ( typeof options.onError !== 'undefined' ) {
		this.onError = options.onError;
	}

	if ( typeof options.onNotificationOpened !== 'undefined' ) {
		this.onNotificationOpened = options.onNotificationOpened;

		if (_pendingNotifications.length > 0) {
			var notification = _pendingNotifications.pop();
			this._onNotificationOpened(notification.message, notification.data, notification.isActive);
		}
	}

	if( typeof options.onNotificationsRegistered !== 'undefined' ) {
		this.onNotificationsRegistered = options.onNotificationsRegistered;
	}

	if( typeof options.onIdsAvailable !== 'undefined' ) {
		this.onIdsAvailable = options.onIdsAvailable;
	}

	function handleConnectionStateChange(isConnected) {
    if(!isConnected) return;

    RNOneSignal.configure();
    NetInfo.isConnected.removeEventListener('change', handleConnectionStateChange);
  }

  NetInfo.isConnected.fetch().then(isConnected => {
    if(isConnected) return RNOneSignal.configure();
    NetInfo.isConnected.addEventListener('change', handleConnectionStateChange);
  }).catch((...args)=>this.onError(args));
};
Example #14
0
const checkNetworkState = (callback) =>{
    NetInfo.isConnected.fetch().done(
        (isConnected) => {
            callback(isConnected);
        }
    );
};
Example #15
0
     return new Promise(function(success, failed){
       NetInfo.isConnected.fetch().done((isConnected) => {
             console.log('WebServiceHandler: Network Connectivity status: ' + isConnected);
             if (!isConnected) {
                console.log('************************ HTTP POST Failed **************************');
               failed({name:'503',message:"No Internet connection"});
             }else {

               console.log('URL:-' + url);
               fetch(url,{
                 method: 'post',
                 'headers': WebServiceHandler.header(headerParam),
                 body: JSON.stringify(parameter)
               })
               .then(function(response) {
                 console.log(response.status);
                   if (!response.ok) {
                     throw {name:response.status,message:"http request failed", value:response.json()};
                   }
                   return response.json();

               })
               .then(function(jsonResponse) {
                 console.log('************************ HTTP POST Succes ************************ ');
                 success(jsonResponse);
               })
               .catch(function(err) {
                   console.log('************************ HTTP POST Failed **************************');
                     failed(err)
               });
             }
          });
     });
Example #16
0
 componentWillUnMount() {
   BackAndroid.removeEventListener('hardwareBackPress');
   NetInfo.isConnected.removeEventListener(
     'change',
     this._handleConnectivityChange
   );
 }
Example #17
0
 getNetWork(){
   var self = this;
   NetInfo.isConnected.fetch().done((isConnected)=> {
      if(!isConnected){
        //从缓存读取
        storage.load({key:'weixinList'}).then(ret =>{
          self.data = ret.newslist;
           setTimeout(()=>{
              self.setState({
                loading:false,
                ajaxing:false,
                dataSource: ds.cloneWithRows(self.data)
              });
           })
         }).catch( err => {
             //网络错误 并且无缓存
             self.setState({
               isDataNull:true
             })
         });
      }else{
        self.getData();
      }
   })
 }
 componentWillUnmount() {
     if(Platform.OS==='android')
     {
         BackAndroid.removeEventListener('hardwareBackPress', this.onBackAndroid.bind(this));
     }
     NetInfo.removeEventListener('change',this.handleConnectionInfoChange.bind(this));
     NetInfo.isConnected.removeEventListener('change',this.handleConnectivityChange.bind(this));      
 }
Example #19
0
 return dispatch => {
   NetInfo.isConnected.addEventListener('change',
     async status => {
       dispatch({type: CHANGE_NET_STATUS, payload: status})
       await dispatch(onNetStatusChangeFaye(status))
     }
   );
 }
Example #20
0
 //
 function handleFirstConnectivityChange(isConnected) {
     if (isConnected) {
         this._fetchData();
         NetInfo.isConnected.removeEventListener(
             'change',
             handleFirstConnectivityChange
         );
     }
 }
Example #21
0
 fetchDataonInternet(){
   NetInfo.isConnected.fetch().done(
       (isConnected) => {
           if (isConnected) {
               this.fetchData();
           }
       }
   );
 }
 componentWillUnmount() {
     NetInfo.removeEventListener(
         'connectionChange',
         this.handleConnectionInfoChange
     );
     NetInfo.isConnected.removeEventListener(
         'connectionChange',
         this.handleConnectionisConnected
     );
 };
 componentWillUnmount() {
   NetInfo.isConnected.removeEventListener(
     'isConnected',
     this._handleConnectivityChange
     );
   NetInfo.removeEventListener(
     'statusChange',
     this._handleNetStatusChange
     );
 }
Example #24
0
 componentDidMount() {
   NetInfo.isConnected.addEventListener(
     'change',
     (res) => {
       if(!res){
         Toast.showLongCenter("无网络连接")
       }
     }
   );
 }
Example #25
0
 NetInfo.isConnected.fetch().done((isConnected) => {
     if (isConnected) {
         this._fetchData();
     } else {
         NetInfo.isConnected.addEventListener(
             'change',
             handleFirstConnectivityChange
         );
     }
 });
  componentDidMount() {
    if (Platform.OS === 'android') {
      BackAndroid.addEventListener('hardwareBackPress', () => {
        BackAndroid.removeEventListener('hardwareBackPress');
        this.handlePressBack();
        return true;
      });
      return false;
    }

    NetInfo.isConnected.fetch().done((isConnected) => {
      this.handleConnectivityChange(isConnected);
    });

    NetInfo.isConnected.addEventListener(
      'change',
      this.handleConnectivityChange.bind(this)
    )
  }
Example #27
0
Notifications.idsAvailable = function(idsAvailable) {
    NetInfo.isConnected.fetch().then(isConnected => {
        if (isConnected == true) {
            RNOneSignal.idsAvailable(idsAvailable);
        }
        else {
            return;
        }
    });
};
Example #28
0
 componentWillMount() {
   this.props.staticDataActions.fetchJson();
   BackAndroid.addEventListener('hardwareBackPress', () => {
     if (this.navigator && this.navigator.getCurrentRoutes().length > 1) {
       this.navigator.pop();
       return true;
     }
     return false;
   });
   NetInfo.isConnected.addEventListener(
     'change',
     this._handleConnectivityChange
   );
   NetInfo.isConnected.fetch().done(
     (isConnected) => {
       this.setState({ isConnected });
     }
   );
 }
 componentWillUnmount() {
   if (this.rhymeTimer != null) {
     clearTimeout(this.rhymeTimer);
     this.rhymeTimer = null;
   }
   NetInfo.isConnected.removeEventListener(
     'change',
     this.handleConnectivityChange
   )
 }
Example #30
0
Notifications.idsAvailable = function(idsAvailable) {
  function handleConnectionStateChange(isConnected) {
    if(!isConnected) return;

    RNOneSignal.idsAvailable(idsAvailable);
    NetInfo.isConnected.removeEventListener('change', handleConnectionStateChange);
  }

  NetInfo.isConnected.fetch().then(isConnected => {
    if(isConnected) return RNOneSignal.idsAvailable(idsAvailable);
    NetInfo.isConnected.addEventListener('change', handleConnectionStateChange);
  });
};