Geschwindigkeit bei Socketverbindung

  • Antworten:1
tomig
  • Forum-Beiträge: 138

12.08.2010, 19:19:09 via Website

Salü,

ich brauche eine Socketverbindung um einen Server Daten zu schicken/ entlocken.

Ich habe bereits 3 verschiedene Methoden probiert.... aber leider ist die schnellste auch die die am wenigsten dafür vorgesehen war/ist.

Vorteile: schnell und stabil
Nachteile: keine Rückmeldungen auswerten, nicht dafür vorgesehen

1WebView webview = new WebView(this);
2 data = "user=tomig";
3 webview.postUrl("http://192.168.178.200", data.getBytes());

Vorteile: 2 -4 mal hintereinander ausführen schnell, Rückmeldungen auswertbar
Nachteile: hängt ab und zu 2-3 sec hinten nach

1String pathUrl = "http://192.168.178.200";
2 String data = "user=tomig";
3 URL url = new URL(pathUrl);
4 HttpURLConnection hpcon = null;
5 hpcon = (HttpURLConnection) url.openConnection();
6 hpcon.setRequestMethod("POST");
7 hpcon.setDoInput(true);
8 hpcon.setDoOutput(true);
9 hpcon.setUseCaches (false);
10 hpcon.setConnectTimeout(100);
11 hpcon.setReadTimeout(600);
12
13 DataOutputStream printout = new DataOutputStream (hpcon.getOutputStream());
14 printout.writeBytes (data);
15 printout.flush ();
16 printout.close ();


Mein Favorit:
Vorteile: recht schnell, aber noch immer langsamer als WebView. Sehr wenig zeichen die übertragen werden... belastet das Netzwerk wenig da das ganze später als Thread alle 1-2 sec ausgeführt werden muß.
Nachteile: hängt bei schnellerer Betätigung hintereinander hinten nach...

1clientSocket = new Socket( SERVERIP, SERVERPORT );
2PrintStream os = new PrintStream( clientSocket.getOutputStream() );
3String test = "POST HTTP/1.1 \r\nHost: 192.168.178.200\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: 9\r\n\r\nuser=tomig";
4os.println( test );


Meine Frage nun, kennt jemand noch einen anderen schnellen stabilen Weg um Daten zu senden/empfangen?
Vielen Dank...

ich muß gar nix... www.tomig.at

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

13.08.2010, 11:50:43 via Website

Nutzt doch den HTTPClient

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten