Android httpclient.execute excepción

Cuando la prueba en el simulador, funciona, pero cuando la prueba con mi dispositivo (galaxia s3), se mantiene lanzando errores, cuando durante el siguiente código:

HttpResponse response; response = httpclient.execute(httppost); 

Las excepciones:

 09-03 08:16:49.018: E/AndroidRuntime(24254): java.lang.RuntimeException: Unable to start activity ComponentInfo{sg.dianping/sg.dianping.activity.ItemListActivity}: android.os.NetworkOnMainThreadException 09-03 08:16:49.018: E/AndroidRuntime(24254): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1970) 09-03 08:16:49.018: E/AndroidRuntime(24254): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995) 09-03 08:16:49.018: E/AndroidRuntime(24254): at android.app.ActivityThread.access$600(ActivityThread.java:128) 09-03 08:16:49.018: E/AndroidRuntime(24254): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161) 09-03 08:16:49.018: E/AndroidRuntime(24254): at android.os.Handler.dispatchMessage(Handler.java:99) 09-03 08:16:49.018: E/AndroidRuntime(24254): at android.os.Looper.loop(Looper.java:137) 09-03 08:16:49.018: E/AndroidRuntime(24254): at android.app.ActivityThread.main(ActivityThread.java:4517) 09-03 08:16:49.018: E/AndroidRuntime(24254): at java.lang.reflect.Method.invokeNative(Native Method) 09-03 08:16:49.018: E/AndroidRuntime(24254): at java.lang.reflect.Method.invoke(Method.java:511) 09-03 08:16:49.018: E/AndroidRuntime(24254): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:993) 09-03 08:16:49.018: E/AndroidRuntime(24254): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:760) 09-03 08:16:49.018: E/AndroidRuntime(24254): at dalvik.system.NativeStart.main(Native Method) 09-03 08:16:49.018: E/AndroidRuntime(24254): Caused by: android.os.NetworkOnMainThreadException 09-03 08:16:49.018: E/AndroidRuntime(24254): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1099) 09-03 08:16:49.018: E/AndroidRuntime(24254): at java.net.InetAddress.lookupHostByName(InetAddress.java:391) 

One Solution collect form web for “Android httpclient.execute excepción”

Esta excepción NetworkingOnMainThread se activa cuando, bueno, realiza actividad de red en el subproceso de UI. Tiene potencial de bloquear el hilo principal, ya que espera hasta que la conexión de red termine antes de reanudar, bloqueando así el hilo.

Tienes 2 opciones.

1 – Mueva toda su red a un hilo diferente. La solución más común y fácil es AsyncTask Pero hay otras opciones, como Handlers . Esta es la opción recomendada.

2- Puede cambiar la directiva para permitir la creación de redes en el subproceso de la interfaz de usuario.

Sólo tiene que añadir este código

 StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); StrictMode.setThreadPolicy(policy); 

Esta opción no se recomienda, ya que simplemente omite la excepción. La excepción es lanzada por una razón. Yo elegiría la primera opción. Hay muchos tutorial sobre cómo implementar AsyncTask .

Buena suerte

  • Cómo desarrollar un control remoto con la nota 3 Blaster IR
  • Android MediaPlayer no se reproduce en Galaxy S6 con Android 5.1.1
  • Recuperación de datos de huellas digitales?
  • Nexus 10, frente a la cámara de vista previa es negro (sin vista previa)
  • ¿Existe una API disponible para usar la función de control remoto de red de Samsung TV?
  • ¿Cómo puedo crear un Android AVD para un Samsung Galaxy Note 2?
  • Android: Señal fatal 11 (SIGSEGV) en 0x00000000 (código = 1) en movie.draw
  • Cómo resolver "versión desconocida de Android en el dispositivo".
  • Acceso de Android para Android 5 dispositivos Samsung
  • Detección del navegador Android Phone
  • Toque flotante en la galaxia S4
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.