反应本机ios netInfo行为异常

反应本机ios netInfo行为异常,ios,react-native,Ios,React Native,在安卓系统中,“connectionChange”事件仅在设备从脱机状态联机时触发,反之亦然,但在IOS系统中,它每次都在调用。 有解决办法吗 componentWillMount(){ NetInfo.isConnected.fetch().then(isConnected => { if (isConnected) { this.setState({ netConnection: isConnected

在安卓系统中,“connectionChange”事件仅在设备从脱机状态联机时触发,反之亦然,但在IOS系统中,它每次都在调用。 有解决办法吗

componentWillMount(){
NetInfo.isConnected.fetch().then(isConnected => {
        if (isConnected) {
            this.setState({
                netConnection: isConnected
            });
        } else {
            ToastAndroid.show("Connection TimeOut!", ToastAndroid.LONG);
            this.setState({
                netConnection: isConnected
            });
        }
    });

    NetInfo.isConnected.addEventListener(
        "connectionChange",
        this.handleFirstConnectivityChange
    );
}

componentWillUnmount(){
     NetInfo.isConnected.removeEventListener(
            "connectionChange",
            this.handleFirstConnectivityChange
        );
}

handleFirstConnectivityChange = (isConnected)=>{
if (isConnected) {
        ToastAndroid.show("Connection Is Live!", ToastAndroid.LONG);
        this.setState({
            netConnection: isConnected
        });
    } else {
        ToastAndroid.show("Connection TimeOut!", ToastAndroid.LONG);
        this.setState({
            netConnection: isConnected
        });
    }
}

你试过真正的设备吗?@PaoloDell'Aguzzo是的,同样的问题你能给我们提供一些代码吗?所以我们可以看到您在代码中使用NetInfo的位置。@PaoloDell'Aguzzo补充道:您是否尝试记录侦听器活动?什么时候叫?断开连接的更改值,还是始终使用相同的值调用?可能它们有不同的行为,您需要检查isConnected是否与state.netConnection不同。但在我的应用程序中,我可以看到我没有这种问题。你使用的是什么版本的RN?