Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Nexus 5X上的TCP连接被拒绝_Android_Sockets_Tcp_Nexus 5 - Fatal编程技术网

Android Nexus 5X上的TCP连接被拒绝

Android Nexus 5X上的TCP连接被拒绝,android,sockets,tcp,nexus-5,Android,Sockets,Tcp,Nexus 5,我有一个简单的应用程序,我打开一个到服务器的TCP套接字连接,然后通过它发送一些数据。它工作正常,但我在Nexus 5X设备上遇到以下异常。因为我可以用其他设备连接到服务器,所以在服务器端这不是问题 09:00:05.118+03:00 D/com.testing.android.util.Util getCurrentGatewayIP: 192.168.1.1 09:00:05.120+03:00 D/com.testing.android.util.TCPClient Connect()

我有一个简单的应用程序,我打开一个到服务器的TCP套接字连接,然后通过它发送一些数据。它工作正常,但我在Nexus 5X设备上遇到以下异常。因为我可以用其他设备连接到服务器,所以在服务器端这不是问题

09:00:05.118+03:00 D/com.testing.android.util.Util getCurrentGatewayIP: 192.168.1.1
09:00:05.120+03:00 D/com.testing.android.util.TCPClient Connect()
09:00:05.121+03:00 D/com.testing.android.util.TCPClient openSocket
09:00:17.162+03:00 E/com.testing.android.util.TCPClient sendInfo
09:00:17.163+03:00 E/com.testing.android.util.TCPClient java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:334)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:196)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:178)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:356)
    at java.net.Socket.connect(Socket.java:586)
    at com.testing.android.util.TCPClient.openSocket(TCPClient.java:208)
    at com.testing.android.util.TCPClient.connect(TCPClient.java:53)

    at android.os.AsyncTask$2.call(AsyncTask.java:304)
    at java.util.concurrent.FutureTask.run(FutureTask.java:237)
    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
    at java.lang.Thread.run(Thread.java:761)
更新:


看起来Nexus 5X阻止了对服务器的访问(服务器是局域网的一部分,通过wifi连接到手机)。此网络没有internet连接。在其他android设备上,您将收到一条通知“Wifi无法访问互联网-此网络无法访问互联网。保持连接?(是/否)”,但您仍可以在局域网内进行通信。在Nexus上,除非用户已接受他们希望保持与网络的连接,否则所有通信都将被阻止

连接是通过本机函数
connect()
实现的。说:

econnrefluse没有人监听远程地址


这意味着您应该检查您的服务器在指定的地址和端口是否确实可用,是否能够接受新的连接。

目前没有解决此问题的编程解决方案。用户必须手动启用网络。由于这是用于检测捕获门户的安全功能,因此只有系统应用程序才能禁用此功能


这篇文章描述了一些更多的细节

我也有同样的错误,挖掘了一段时间后,我意识到我的手机最近在AFWall+应用程序中应用了防火墙,哈哈