flutter - Flutter)我想在socket断开时自动重新连接
问题描述
我正在构建一个 Flutter 应用程序。套接字通信是通过“web_socket_channel”包实现的。我想实现下面的两个功能。
- 套接字断开检测
- 检测到套接字断开连接时自动重新连接尝试
不幸的是,“web_socket_channel”包不提供这些功能。
你能给我一些关于如何实施它的建议吗?
解决方案
You can do something like this
createSocket(){
IOWebSocketChannel channel;
try {
channel = IOWebSocketChannel.connect('ws://...');
channel.stream.listen((data) async {
//Do something here
}).onDone(() {
print("Socket Done");
createSocket();
});
} catch (ex) {
print("SOCKET ERROR");
print(ex);
createSocket();
}
}
推荐阅读
- r - 在 R 中按 id 和列名合并
- mp3 - 来自 mp3 帧长度的公式
- javascript - 带有自定义 webpack 构建的 vscode 节点调试器
- javascript - 关于使用 useContext 和 useReducer 钩子的问题
- react-native - 当使用 applyNativeModulesSettingsGradle(settings) 时,Gradle 冻结为 Android 构建 react-native 0.60.3
- c++ - 将手指(不仅仅是手)放在步枪上
- ffmpeg - 带有 -flags:v +ildct 的 ffmpeg NVENC 编码显示“未找到支持 NVENC 的设备”
- java - 如何修复“SSLHandshakeException:收到致命警报:decode_error”?
- javascript - 获取AngularJS中最后一列的不同总数
- python - 在 Jinja Render 方法中使用变量作为键