2012-07-31 19 views
5

Estoy intentando portar una aplicación Phonegap/Cordova a Android. Funciona en versiones anteriores de los SDK pero no en Android ICS (SDK 14). Obtengo java.io.IOException: An established connection was aborted by the software in your host machine o la aplicación se carga pero no puedo conectarme a Internet.La aplicación no se puede conectar a la red con Android ICS

Tengo <uses-permission android:name="android.permission.INTERNET"></uses-permission> y he comprobado que no hay ejecuciones duplicadas de adb o eclipse.exe. Tampoco se puede conectar a Internet en dispositivos externos que también ejecutan Android 4+.

Mi manifiesto tiene <uses-sdk android:targetSdkVersion="14" android:minSdkVersion="7" />

me señaló en la dirección de vista huella que cuando intento ejecutar estadísticas de la red me sale un "Problema al leer las estadísticas de red xt_qtaguid dispositivo de vaivén selecciona" Error.

Una respuesta SO here indica que puede haber un problema con un Kernal y sugiere backporting, pero no tiene idea de cómo hacer esto o si es lo correcto. Mi versión de Eclipse es Eclipse SDK 3.7.2

+0

¿Cuál es exactamente el código que está utilizando para establecer una conexión? – vArDo

+0

Puede intentar usar esta herramienta para ver qué está sucediendo con las conexiones de red si traceview no puede ayudar. Se llama ARO y le mostrará toda la actividad de la red que ocurre cuando su aplicación se ejecuta en el emulador de Android. http://developer.att.com/developer/legalAgreementPage.jsp?passedItemId=9700312 –

+0

Gracias, eso parece útil. En cuanto al código, a riesgo de sonar estúpido, no tengo ni idea, no sé nada de Java. ¿Que debería buscar? – danssker

Respuesta

1

desde android 4. cuando alguien intenta hacer cosas de red en la interfaz de usuario Thread android lanza una excepción android.os.NetworkOnMainThreadException. tal vez eso es un problema?

+0

Suena posible, ¿me lo puede explicar como si tuviera cinco años? ¿Cómo evito que arroje la excepción? – danssker

+0

Es mejor si veo el código. pero ¿usas http://developer.android.com/reference/android/os/AsyncTask.html clase para hacer operaciones de red? (¿o qué método usas?) –

+0

No, nunca antes visto eso, tampoco estoy seguro de cómo implementarlo. ¿Dónde en elipse agrego la subclase AsyncTask? Puedo publicar el código del proyecto si me dices qué bit es relevante. Mi ken de Java es bastante estéril. – danssker

Cuestiones relacionadas