如何在android中用Java发送数据报包

时间:2015-01-20 09:40:25

标签: java android sockets udp datagram

我写了一个测试发送数据的函数

public void send() {

        Runnable myRunnable = new Runnable()
        {

            @Override
            public void run(){
                while(true) {
                    try {
                        byte[] buffer = new byte[1024];
                        DatagramPacket packet = new DatagramPacket(buffer, buffer.length, InetAddress.getByName("111.11.111.111"), 65535);
                        DatagramSocket socket = new DatagramSocket();
                        socket.send(packet);
                    } catch (Exception e) {
                    }
                }
            }
        };
        Thread myThread = new Thread(myRunnable);
        myThread.start();
    }

可以在我的电脑上使用,但似乎无法在我的手机上执行任何操作。

我尝试用按钮调用该功能

public void onClick(View v) {
        final int id = v.getId();
        switch (id) {
            case R.id.button:
                test();

                break;

        }
    }

但似乎没有任何事情发生。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

NVM我发现了我的问题。只需添加互联网的Android权限

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