Android DatagramSocket无法正常工作

时间:2010-08-02 20:05:32

标签: java android

public void Connect() throws Exception
{
 InetAddress dest;
 dest = InetAddress.getByName("192.168.1.100");
 DatagramSocket socket = new DatagramSocket();
 socket.connect(new InetSocketAddress(15900));
 byte[] message = "Oh Hai!".getBytes();
 DatagramPacket packet = new DatagramPacket(message, message.length,dest,15900);
 socket.send(packet);
}

在Android SDK 1.5上使用上面的代码,在将调试器附加到android仿真时,我逐步完成上面的示例(从教程中获得),调试器在到达DatagramSocket行时将控制权返回给用户。一旦我按下F8(Eclipse Galileo)继续,我立即再次控制..基本上它永远不会到达socket.connect ....这里出了什么问题?如果我将它包围在try / catch块中,则不会捕获任何内容,因此它不是例外。为什么会这样死?

谢谢!

1 个答案:

答案 0 :(得分:6)

啊,套接字权限错误......没关系!

对于那些想知道我是如何解决它的人们: 清单需要添加一个使用权限,权限是互联网。

将以下内容添加到清单中:

<uses-permission android:name="android.permission.INTERNET"></uses-permission>