Error en httppost con Android

He mirado a través de la mayoría de los q / a aquí en Stackoverflow ya través de Internet para la respuesta antes de que decidí llegar aquí ..

Estoy tratando de llamar a una página php en mi sitio web y sigo recibiendo este error cuando el httpclient.execute se llama:

08-19 12:42:33.889: E/AndroidRuntime(5340): FATAL EXCEPTION: main 08-19 12:42:33.889: E/AndroidRuntime(5340): java.lang.IllegalStateException: Could not execute method of the activity 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.view.View$1.onClick(View.java:3046) 

Así que leí un mensaje y una cosa me aseguré de que tenía el

 <uses-permission android:name="android.permission.INTERNET" /> 

Añadido a mi manifiesto (lo que hago) a continuación es un snip-it que tengo de Internet que llamo desde un botón de evento onclick:

  HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("http://mywebsite/scripts/test.php"); try { // Add your data List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(3); nameValuePairs.add(new BasicNameValuePair("function", "1")); nameValuePairs.add(new BasicNameValuePair("user", "username")); nameValuePairs.add(new BasicNameValuePair("pass", "123")); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); // Execute HTTP Post Request HttpResponse response = httpclient.execute(httppost); Log.e("log_tag", response.toString()); } catch (ClientProtocolException e) { Log.e("log_tag", e.toString()); } catch (IOException e) { Log.e("log_tag", e.toString()); } 

Registro completo:

 08-19 12:42:16.365: I/System.out(5340): Sending WAIT chunk 08-19 12:42:16.365: W/ActivityThread(5340): Application com.example.equinetravels is waiting for the debugger on port 8100... 08-19 12:42:16.373: I/dalvikvm(5340): Debugger is active 08-19 12:42:16.373: I/System.out(5340): Debugger has connected 08-19 12:42:16.373: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:16.576: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:16.779: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:16.982: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:17.186: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:17.381: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:17.584: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:17.779: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:17.982: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:18.186: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:18.381: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:18.584: I/System.out(5340): waiting for debugger to settle... 08-19 12:42:18.787: I/System.out(5340): debugger has settled (1432) 08-19 12:42:19.037: D/libEGL(5340): loaded /system/lib/egl/libGLES_android.so 08-19 12:42:19.045: D/libEGL(5340): loaded /vendor/lib/egl/libEGL_POWERVR_SGX540_120.so 08-19 12:42:19.053: D/libEGL(5340): loaded /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so 08-19 12:42:19.053: D/libEGL(5340): loaded /vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so 08-19 12:42:19.162: D/OpenGLRenderer(5340): Enabling debug mode 0 08-19 12:42:33.834: D/AndroidRuntime(5340): Shutting down VM 08-19 12:42:33.834: W/dalvikvm(5340): threadid=1: thread exiting with uncaught exception (group=0x40ab6210) 08-19 12:42:33.889: E/AndroidRuntime(5340): FATAL EXCEPTION: main 08-19 12:42:33.889: E/AndroidRuntime(5340): java.lang.IllegalStateException: Could not execute method of the activity 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.view.View$1.onClick(View.java:3046) 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.view.View.performClick(View.java:3526) 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.view.View$PerformClick.run(View.java:14133) 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.os.Handler.handleCallback(Handler.java:605) 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.os.Handler.dispatchMessage(Handler.java:92) 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.os.Looper.loop(Looper.java:137) 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.app.ActivityThread.main(ActivityThread.java:4697) 08-19 12:42:33.889: E/AndroidRuntime(5340): at java.lang.reflect.Method.invokeNative(Native Method) 08-19 12:42:33.889: E/AndroidRuntime(5340): at java.lang.reflect.Method.invoke(Method.java:511) 08-19 12:42:33.889: E/AndroidRuntime(5340): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:787) 08-19 12:42:33.889: E/AndroidRuntime(5340): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:554) 08-19 12:42:33.889: E/AndroidRuntime(5340): at dalvik.system.NativeStart.main(Native Method) 08-19 12:42:33.889: E/AndroidRuntime(5340): Caused by: java.lang.reflect.InvocationTargetException 08-19 12:42:33.889: E/AndroidRuntime(5340): at java.lang.reflect.Method.invokeNative(Native Method) 08-19 12:42:33.889: E/AndroidRuntime(5340): at java.lang.reflect.Method.invoke(Method.java:511) 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.view.View$1.onClick(View.java:3041) 08-19 12:42:33.889: E/AndroidRuntime(5340): ... 11 more 08-19 12:42:33.889: E/AndroidRuntime(5340): Caused by: android.os.NetworkOnMainThreadException 08-19 12:42:33.889: E/AndroidRuntime(5340): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1119) 08-19 12:42:33.889: E/AndroidRuntime(5340): at java.net.InetAddress.lookupHostByName(InetAddress.java:441) 08-19 12:42:33.889: E/AndroidRuntime(5340): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:243) 08-19 12:42:33.889: E/AndroidRuntime(5340): at java.net.InetAddress.getAllByName(InetAddress.java:220) 08-19 12:42:33.889: E/AndroidRuntime(5340): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137) 08-19 12:42:33.889: E/AndroidRuntime(5340): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164) 08-19 12:42:33.889: E/AndroidRuntime(5340): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119) 08-19 12:42:33.889: E/AndroidRuntime(5340): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360) 08-19 12:42:33.889: E/AndroidRuntime(5340): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555) 08-19 12:42:33.889: E/AndroidRuntime(5340): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487) 08-19 12:42:33.889: E/AndroidRuntime(5340): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465) 08-19 12:42:33.889: E/AndroidRuntime(5340): at com.example.equinetravels.MainActivity.postData(MainActivity.java:79) 08-19 12:42:33.889: E/AndroidRuntime(5340): at com.example.equinetravels.MainActivity.sendLogon(MainActivity.java:47) 08-19 12:42:33.889: E/AndroidRuntime(5340): ... 14 more 

Parece que recibes una excepción de NetworkOnMainThreadException

Intente ejecutarlo en un hilo diferente?

De los Javadocs:

"La excepción que se activa cuando una aplicación intenta realizar una operación de red en su subproceso principal.

Esto solo se activa para aplicaciones que apuntan al SDK Honeycomb o superior. Las aplicaciones que se orientan a versiones anteriores de SDK tienen permiso para realizar redes en sus subprocesos de bucle de eventos principales, pero es muy desalentador. Véase el documento Diseño para la capacidad de respuesta. "

Se trata de una NetworkOnMainThreadException … Está intentando realizar una operación de red en el subproceso principal, no está permitido en el subproceso principal de la interfaz de usuario de la aplicación de Android.

Para solucionar esto, utilice AsyncTask o Thread y coloque su Operación relacionada con la red en ella.

  • ¿Cómo puedo verificar las transacciones de facturación de Android en la aplicación en MI servidor?
  • Archivo de imagen de Android enviado a archivo de imagen de carga de php es el tipo de aplicación / octet-stream y no image / jpeg?
  • ¿Cómo puedo iniciar sesión con facebook y obtener información de usuario para enviar mi db remoto desde la aplicación android
  • ¿Cómo utilizar BLOB con JSON y PHP?
  • Guardar la imagen de base64encoded a la base de datos del servidor como BLOB
  • Cuando se llama a un archivo php con algún código js de android, el código js es la salida de una llamada
  • Cómo leer datos fragmentados de archivo de archivo Gap de teléfono en Android
  • Detectar navegador de aplicaciones (WebView) con PHP / Javascript
  • ¿Por qué el descifrado de AES java devuelve caracteres adicionales?
  • Verificación de la firma de compra en la aplicación con PHP openssl
  • Mantener sesión entre llamadas HttpUrlConnection (Native / Webview)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.