我已经看过 SO 上的一些答案,但无济于事。我如何检查端口是否已打开,如果已打开则关闭它,然后从 Java 代码打开该端口上的套接字?
详细信息:我想打开端口号 5000 并将其绑定(bind)到一个 udp 套接字。但是,每次我打开该端口上的套接字时,都会出现异常“地址已在使用中”。如何确保端口首先可用?在终止应用程序时覆盖 onDestroy() 以关闭套接字似乎并没有这样做。
最佳答案
I have already looked at some of the answers on SO but to no avail.
难以置信。
How can I check if a port is open already
尝试如下所示绑定(bind)到它。如果您收到 BindException,则它正在使用中。
close it if open already
你不能。
and then open a socket on that port from Java code?
DatagramSocket ds = new DatagramSocket(port);
关于java - 有没有办法以编程方式检查android上的端口是否打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23029725/