suconghou / dlna-dart

simple dlna client in pure dart | Dart 编写的DLNA投屏客户端
https://pub.dev/packages/dlna_dart
BSD 3-Clause "New" or "Revised" License
36 stars 8 forks source link

Unhandled Exception: SocketException: Failed to create datagram socket (OS Error: Address already in use, errno = 48), address = 0.0.0.0, port = 1900 #2

Closed iptodays closed 2 years ago

iptodays commented 2 years ago

非常感谢作者提供的插件,开始搜索的时候遇到了下面的问题

设备: iPhone Xs Max 系统版本: 14.7.1 Unhandled Exception: SocketException: Failed to create datagram socket (OS Error: Address already in use, errno = 48), address = 0.0.0.0, port = 1900 image

suconghou commented 2 years ago

端口被占用了,可能是stop()不完善导致的. 已修复,可以更新到0.0.2试试.

注意,如果重复实例化,第二个实例需要第一个实例close后才能start, 也可以都使用 reusePort 参数多实例共存,参考readme

iptodays commented 2 years ago

更新之后仍然有这个报错,Android没问题。iOS会遇到 模拟器可以复习 image

iptodays commented 2 years ago

出现错误的端口一直是0.0.0.0

iptodays commented 2 years ago

xml 5.1.2 没问题。但是5.2.0就会版本冲突 image

suconghou commented 2 years ago

可能你系统中已有其他服务监听了这个端口, 你有试过 start(reusePort:true)

suconghou commented 2 years ago

xml随手更新了,没想到flutter不兼容... 0.0.3 已回退 xml 到 5.1.2

iptodays commented 2 years ago

调用start(reusePort:true) image

iptodays commented 2 years ago

https://github.com/flutter/flutter/issues/42102 这里似乎提到了这个问题

iptodays commented 2 years ago

try一下,最起码可以用了 image

suconghou commented 2 years ago

官方的问题, 已经按照官方的操作修复了,请尝试新版0.0.4

iptodays commented 2 years ago

nice