当通过移动数据(4G)来电时,我尝试将数据发送到服务器。我收到以下错误之一:
java.net.UnknownHostException:主机未解析:xyz.xy
或者
java.net.SocketTimeoutException:15000 毫秒后无法连接到 /xxx.xxx.xxx.xxx(端口 yyyyyy)
WIFI开启时,来电时正在发送数据。
以下是部分代码:
Socket socket = new Socket();
DataOutputStream dos;
DataInputStream dis;
try {
socket.connect(new InetSocketAddress(SERVER_IP, SERVER_PORT), CONNECTION_TIMEOUT);
socket.setTcpNoDelay(true);
socket.setSoTimeout(READ_TIMEOUT);
dos = new DataOutputStream(socket.getOutputStream());
dis = new DataInputStream(socket.getInputStream());
int count = text.getBytes("UTF-8").length;
ByteBuffer data = ByteBuffer.allocate(count);
data.put(text.getBytes("UTF-8"));
dos.write(data.array(), 0, data.array().length);
来电时通过移动数据 (4G) 发送数据有问题吗?或者我缺少任何设置?
编辑
我在读,如果手机支持 SVDO 技术或 4G LTE,调制解调器可以接受呼叫和发送数据。我的手机小米红米 3S 就有这项技术。