无法从 Android 手机连接到本地 Websocket
以下行启用了我的 websocket 服务器:
async with websockets.serve(handle, "0.0.0.0", 8765)
当从同一设备连接时,
python3 -m websockets ws://192.168.178.20:8765/
它可以完美地工作。
现在在我的 flutter 应用程序中:
final channel = WebSocketChannel.connect(
Uri.parse('ws://192.168.178.20:8765/'),
);
它无法连接并且 Websocket 为空。我还通过 websocket-client android 应用程序对其进行了测试。 在那里我得到了错误代码1006
。难道Android强制执行安全连接,这就是它无法连接的原因吗?不幸的是,我这里没有其他设备可以测试它
。我确保 192.168.178.20 是我的家庭网络中的设备地址
The Following Line enables my websocket server:
async with websockets.serve(handle, "0.0.0.0", 8765)
when connecting from the same Device
python3 -m websockets ws://192.168.178.20:8765/
It works flawlessly.
Now in my flutter App Though:
final channel = WebSocketChannel.connect(
Uri.parse('ws://192.168.178.20:8765/'),
);
it does not connect and the Websocket is null. I also did test it via a websocket-client android app.
There I get back the Error Code 1006
. Can it be that Android enforces a secure connection and this is the reason why it can't connect? I've no other device here to test it, unfortunately
Btw. I made sure that 192.168.178.20 is the device address in my home-network
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 Android 上,您需要在 Android 清单中声明互联网的使用,请参阅 https ://docs.flutter.dev/development/data-and-backend/networking
on Android you need to declare the use of the internet in the Android manifest, see https://docs.flutter.dev/development/data-and-backend/networking