2012-03-28 12 views
0

Ich habe es geschafft, einen Server (auf dem PC) und einen Client (auf dem Gerät) durch die IP-Adresse einzurichten. Nun möchte ich eine Nachricht an den PC senden, je nachdem, ob links oder rechts ich schlug die Lautstärke nach oben oder unten ...Int-Wert an PC senden von Android

Auftraggeber:

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) 
    { 
     mtcpclient.write(1); //I need to implement write function.. 
     return true; 
    } 
    else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN){ 
     mtcpclient.write(2);//I need to implement write function.. 
     return true; 
    } 

    return super.onKeyDown(keyCode, event); 
} 

Server:

private void processCommand(int command) {//Recieve int and decide to go right or left 
    try { 
     Robot robot = new Robot(); 
     switch (command) { 
     case 1: 
      robot.keyPress(KeyEvent.VK_RIGHT); 
      System.out.println("Right"); 
      break; 
     case 2: 
      robot.keyPress(KeyEvent.VK_LEFT); 
      System.out.println("Left"); 
      break; 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
+0

viel Glück. Was ist dein Problem? –

+0

müssen die Schreibfunktion – user182192

Antwort

0

Wenn Ihre Frage ist, wie die Daten zu senden ... hier ist ein einfaches Beispiel dafür, wie um Daten über TCP zu senden.

String message = "Message to server"; 
String ipAdd = "127.0.0.1"; 
int port = 6789; 
InetAddress ip = InetAddress.getByName(ipAdd); 
Socket clientSocket = new Socket(ip, port); 
DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream()); 
outToServer.writeBytes(message); 
outToServer.flush(); 
clientSocket.close(); 

Dann müssen Sie nur einen ähnlichen Listener auf Ihrem Computer schreiben.

0

Ich stimme der Antwort von Kevin zu, aber der Emulator wird als eine andere Maschine betrachtet, also müssen Sie den ipAdd durch die Adresse Ihres PC ändern, und normalerweise sollte das funktionieren.

Viel Glück;)

+0

implementieren Ich habe einfach localhost als Beispiel IP verwendet. Ich wollte damit nicht sagen, dass es die Adresse war, die benutzt werden sollte. – Kevin

Verwandte Themen