-2

当通过移动数据(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 就有这项技术。

4

1 回答 1

1

我发现了问题。问题在于运营商和技术 VoLTE。在捷克共和国,只有 O2 运营商才能做到这一点,请参见论坛。在三星 Galaxy S7 中它正在工作。

于 2018-02-26T07:34:23.123 回答