Senden und empfangen von Daten über UDP-Socket-java android

Ich bin in der Lage, richtig schicke meine Daten über UDP-socket , aber wenn ich Daten empfangen es hält auf warten auf receive-Befehl weiß ich nicht, was ist die Ursache HIERFÜR.
Bitte haben Sie einen Blick auf meinen code unten.

Ich bin in der Lage, richtig empfangen von Daten auf server-Seite von android-Gerät, aber wenn ich das senden von Daten von der server-Seite auf android-Gerät nicht empfangen. aber wenn ich das senden von Daten vom server zu jedem anderen client-e.g PC-Anwendung erhalten und zeigt die Daten richtig an.

class Task implements Runnable {
    @Override
    public void run() {
        try {
            String messageStr = "feed";
            int server_port = 8888;
            InetAddress local = InetAddress.getByName("10.0.2.2");
            int msg_length = messageStr.length();
            byte[] message = messageStr.getBytes();


            DatagramSocket s = new DatagramSocket();
           //

            DatagramPacket p = new DatagramPacket(message, msg_length, local, server_port);
            s.send(p);//properly able to send data. i receive data to server

            for (int i = 0; i <= 20; i++) {
                final int value = i;
                message = new byte[30000];
                p = new DatagramPacket(message,message.length );
                s.receive(p); //keeps on waiting here but i am sending data back from server, but it never receives
                final byte[] data =  p.getData();;
                try {



                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                handler.post(new Runnable() {
                    @Override
                    public void run() {
                        progressBar.setProgress(value);
                        imageView.setImageBitmap(BitmapFactory.decodeByteArray(data,0,data.length));
                    }
                });
            }
        }
        catch(Exception ex)
        {

        }
    }
}
Ich weiß das ist ein bisschen alt jetzt, aber hast du jemals diese Figur ein? Stecken Sie das selbe problem wie du. Ich bin immer Daten an den server, aber wenn ich Sie senden nichts zurück..
verringern Sie die Größe der Daten für jeden senden, im Fall von UDP, das löste das Problem für mich.
Ich fand es nach einer Weile aus, aber die Größe der Daten ist der gleiche sowohl das senden und empfangen von Ende-ansonsten bekommen Sie abgehackt audio

InformationsquelleAutor user2539602 | 2013-10-23

Schreibe einen Kommentar