android.os.networkonmainthreadexception in einem neuen Thread

7

Ich bin mir bewusst, dass Sie seit Android 3.0 keine Netzwerkoperationen im Hauptthread durchführen können. Also habe ich meinen Anruf in einem neuen Thread :

gemacht %Vor%

Aber ich bekomme diese Ausnahme, obwohl ich nicht im Hauptthread bin (oder zumindest denke ich das ...)

    
Fustigador 09.09.2013, 14:07
quelle

3 Antworten

38

Die Verwendung von run() startet keinen separaten Thread, sondern startet tatsächlich einen Lauf in demselben Thread, auf dem es gestartet wurde.

Sie müssen start() verwenden, um einen neuen Thread zu starten.

    
tyczj 09.09.2013, 14:14
quelle
0

Diese Zeilen

%Vor%

muss auf der UI Thread ausgeführt werden, da Sie ein paar Mal darunter mit runOnUiThread() arbeiten. Toast ist ein UI -Element.

    
codeMagic 09.09.2013 14:09
quelle
-2

Sie können diesen Code verwenden

%Vor%

um eine Ausnahme auch für SDK & gt; zu vermeiden; 9 Sie müssen Netzwerkoperationen in einem anderen Thread als UI ausführen oder Sie können AsyncTask .

    
Nitin Misra 09.09.2013 14:21
quelle

Tags und Links