Android 11. socketOutStream.close() 关闭 SSLSocket

问题描述

当我在 Android 11 上使用此代码

  OutputStream socketoutStream = mSocket.getoutputStream();
            socketoutStream.write(bb.array());
            socketoutStream.write(data);
            socketoutStream.flush();
            socketoutStream.close();

socketoutStream.close() 关闭 SSLSocket,当我调用 mSocket.getInputStream() 时,我得到 java.net.socketException: socket closed

如果我在 Android 10 及以下版本上使用此代码,则没有问题。

为什么会这样?

解决方法

关闭流也会关闭套接字是很正常的。

不仅适用于 Android 11。