UDP Android到Win7 PC有时候工作有时不起作用

时间:2016-03-03 19:47:44

标签: c# android windows udp

您好我有一个Android应用程序,它将UDP消息发送到我在win7 PC上运行的应用程序。有些日子,消息一直没有问题,其他日子没有消息显示。我没有理由这样做。我有几天没有在我的电脑上获得任何UDP消息,然后我无缘无故地确定UDP消息刚刚开始显示。可悲的是,它只是停止进入的另一种方式。我有一个来自同事的第二个UDP服务器应用程序,它在他的计算机上运行良好,但在我的计算机上运行时也遇到同样的问题。如果它是防火墙问题,我会认为消息永远不会发给我。这看起来很随意。重新启动设备无法解决问题。有什么想法导致我不一致的沟通?我的UDP服务器应用程序是用C#编写的。我没有看到Wire Shark跟踪中丢失的UDP消息。

以下是Android中用于发送UDP消息的代码。

public void SendPLMMessage(InetAddress DistIPAddress, int ServerPort, String msg) {
    int len = msg.length();
    byte[] data = new byte[len / 2];

    try {
        for (int i = 0; i < len; i += 2) {
            data[i / 2] = (byte) ((Character.digit(msg.charAt(i), 16) << 4) + Character.digit(msg.charAt(i + 1), 16));
        }
    } catch (Exception ee) {
        WriteFile("exception in SendPLMMessage()\n");
    }

    try {
        DatagramSocket s = new DatagramSocket();
        DatagramPacket pkt = new DatagramPacket(data, data.length, DistIPAddress, ServerPort);
        s.send(pkt);
        s.close();
        WriteFile(msg + "\n");
    } catch (Exception e) {
         WriteFile("Datagram exception\n");
    }
}

0 个答案:

没有答案