OkHttp Library - NetworkOnMainThreadException auf einfachen Post

Möchte ich OkHttp Bibliothek für die Vernetzung in Android.
Ich begann mit der einfachen post Beispiel, wie geschrieben, in Ihrer website:

public static final MediaType JSON = MediaType.parse("application/json; charset=utf-8");

OkHttpClient client = new OkHttpClient();

String post(String url, String json) throws IOException {
  RequestBody body = RequestBody.create(JSON, json);
  Request request = new Request.Builder()
      .url(url)
      .post(body)
      .build();
  Response response = client.newCall(request).execute();
  return response.body().string();
}

Mit diesem Aufruf:

String response = post("http://www.roundsapp.com/post", json);

Dieser Aufruf endet mit NetworkOnMainThreadException.
Ich wickeln konnte der call mit einem AsyncTask, aber soweit ich das verstanden habe aus den Beispielen, die OkHttp-Bibliothek sollte schon aufgepasst werden, dass..
Mache ich etwas falsch?

Kommentar zu dem Problem
möglich, Duplikat der android.os.NetworkOnMainThreadException Hast du einmal darüber nachdenken, suchen Sie zuerst? Kommentarautor: Simon
Es hat nichts mit dem zu tun.. die Frage nochmal Lesen. Fett gedruckten Teile vor allem. Denken Sie über zuerst Lesen? Kommentarautor: Aviv Ben Shabat
Ich habe gelesen, dass die Frage, und es hat auch alles damit zu tun. Sie sind dong Netzwerk-IO auf dem Haupt-thread. Es spielt keine Rolle, was Sie denken die Bibliothek ist zu tun, es ist nur eine Ursache für diese Ausnahme. Kommentarautor: Simon
Ich habe nicht gefragt, was ist der Ursache der Ausnahme. Ich fragte, was ist der richtige Weg, um es zu beheben. die Antwort, Die Sie Hinzugefügt wird, wird eine Antwort (die ich sehr gut kannte), aber es war nicht der richtige Weg! Der richtige Weg war geschrieben von @se_bastiaan. Kommentarautor: Aviv Ben Shabat
Ich hier gelandet bei der Suche nach Beispiele für asynchrone Aufrufe, da die OkHttp-Seite nicht haben viele. Die Github-Seite, die @se_bastiaan verbunden, hat mehrere nützliche: github.com/square/okhttp/wiki/Recipes Kommentarautor: Krøllebølle

InformationsquelleAutor der Frage Aviv Ben Shabat | 2015-01-25

Schreibe einen Kommentar