UDP-Wifi Verbindung

D

daviddy

Neues Mitglied
0
Hallo
ich versuche eine App zu entwickeln, dadurch man eine Verbindung mit Android und PC herstellen und daten senden kann. Meine Code für Client(Android) Seite ist:
Code:
public class ClientActivity extends Activity {
    /** Called when the activity is first created. */

    EditText textOut;
    TextView textIn;
    EditText ipadress;
    EditText port;
    String ip = "0";
    int UDP_SERVER_PORT=5001;
    
    
      
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        ipadress = (EditText) findViewById(R.id.ipadresse);
     
        textOut = (EditText) findViewById(R.id.textout);
        Button buttonSend = (Button) findViewById(R.id.send);
        textIn = (TextView)findViewById(R.id.textin);
        buttonSend.setOnClickListener(buttonSendOnClickListener);

    }

    Button.OnClickListener buttonSendOnClickListener = new Button.OnClickListener() {

        public void onClick(View arg0) {

    
                    try {
                        
                    
                    ip = ipadress.getText().toString();
                
                    int port =UDP_SERVER_PORT;
                    InetAddress serverAddr = InetAddress.getByName(ip);
                    Log.d("UDP", "Connecting..");
                    DatagramSocket clientsocket = new DatagramSocket(port);
                    byte[] sendbuf =("Hello from Client").getBytes();
                    byte[] receivebuf=new byte[1024];
                    
                    Log.d("UDP","Sending: ' "+new String(sendbuf)+"'");
                    //new byte[1500];
                    DatagramPacket sendpacket = new DatagramPacket(sendbuf, sendbuf.length, serverAddr,port);
                    Log.d("UDP", "Send..");
                    clientsocket.send(sendpacket);
                    
                    Log.d("UDP", "Done");
                    DatagramPacket receivepacket = new DatagramPacket(receivebuf, receivebuf.length);
                    clientsocket.receive(receivepacket);
                
                    String modifiedSentence=new String(receivepacket.getData());
                    System.out.println("FROM SERVER:"+modifiedSentence);
                    
                    clientsocket.close();
                   
                    }catch (Exception e) {
                        Log.e("UDP", "C: Error", e);
                    }

    }

    };

}
und Server Seite:
Code:
import java.io.*;
import java.net.*;

class UDPServer
{
   public static void main(String args[]) throws Exception
      {
         DatagramSocket serverSocket = new DatagramSocket(5001);
            byte[] receiveData = new byte[1024];
            byte[] sendData = new byte[1024];
            while(true)
               {
                  DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length);
                  serverSocket.receive(receivePacket);
                  String sentence = new String( receivePacket.getData());
                  System.out.println("RECEIVED: " + sentence);
                  InetAddress IPAddress = receivePacket.getAddress();
                  int port = receivePacket.getPort();
                  String capitalizedSentence = sentence.toUpperCase();
                  sendData = capitalizedSentence.getBytes();
                  DatagramPacket sendPacket =
                  new DatagramPacket(sendData, sendData.length, IPAddress, port);
                  serverSocket.send(sendPacket);
               }
      }
}
Von meinem Android kann ich leider nicht sendet. Auf eine Antwort freue ich mich sehr.
Grüsse
 
Deine Fehlerbeschreibung ist leider ein wenig ungenau.

Was heisst "...vom Android kann nicht gesendet werden.."?

Heisst das das es mit anderen Programmen geht?
Hast du die Firewalleinstellungen an deinem Rechner, der Server spielt, mal geprüft?
 
Unicate schrieb:
Deine Fehlerbeschreibung ist leider ein wenig ungenau.

Was heisst "...vom Android kann nicht gesendet werden.."?

Heisst das das es mit anderen Programmen geht?
Hast du die Firewalleinstellungen an deinem Rechner, der Server spielt, mal geprüft?

ich meinte, dass ich von meinem Android Smatphone kein einziges zu pc senden kann. Wenn ich auf button send drücke, hängt app einfach auf.
 
Kannst du mal die LogCat ausgabe mitposten?
 
Internet permission gesetzt?
 

Ähnliche Themen

wernho
Antworten
11
Aufrufe
694
wernho
wernho
M
  • maksimilian
Antworten
2
Aufrufe
1.213
maksimilian
M
F
Antworten
5
Aufrufe
1.130
jogimuc
J
Zurück
Oben Unten