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