Java Android TCP客户端使用socketchannel。我如何为它设置选项?

Java Android TCP客户端使用socketchannel。我如何为它设置选项?,java,android,tcp,socketchannel,Java,Android,Tcp,Socketchannel,我正在为运行安卓版本4.4.2的安卓设备开发一个客户端,从中我发现了一些奇怪的行为。很可能是因为它在构建包之前正在等待更多数据,但我不希望这样,所以我尝试设置选项TCP_NODELAY。然而,在任何地方都找不到这样的函数或变量 如何将SocketChannel设置为无延迟模式?这是我当前创建套接字通道的代码 sockChannel = SocketChannel.open(new InetSocketAddress(socket_ip_, socket_port_)); 我尝试了sockCha

我正在为运行安卓版本4.4.2的安卓设备开发一个客户端,从中我发现了一些奇怪的行为。很可能是因为它在构建包之前正在等待更多数据,但我不希望这样,所以我尝试设置选项TCP_NODELAY。然而,在任何地方都找不到这样的函数或变量

如何将SocketChannel设置为无延迟模式?这是我当前创建套接字通道的代码

sockChannel = SocketChannel.open(new InetSocketAddress(socket_ip_, socket_port_));
我尝试了
sockChannel.socket().setTCPNoDelay(true),但我没有注意到任何变化。我走对了吗?我错过什么了吗


谢谢你的帮助。

如果有人发现了这个,我有正确的解决方案

sockChannel.socket().setTCPNoDelay(true)工作。我没有看到行为发生任何变化的原因是有人更改了应用程序的名称,并且忘记记录他更改了它。因此,我每次都要启动旧程序


要访问套接字选项和功能,您可以通过写入
.socket()

请求套接字。如果这样做不起作用,那么Nagle算法一开始就不是您的问题。