Try catch exception devuelve siempre null
Tengo problemas con Android. Me desarrollo en el dispositivo y tengo problema con la captura de excepciones. Estoy ejecutando un código en AsyncTask y finalmente lo simplifico para:
try { if (true) throw new Exception("ERROR"); } catch (Exception e) { Log.e("e", "exception", e); }
Mi problema es que la variable 'e' siempre es nula. No estoy seguro de lo que está sucediendo en realidad. Lo que es más a veces funciona, pero no puedo decir cuándo. Acabo de levantarme de la computadora por unos minutos regreso y boom, funciona. Haciendo la codificación de unos minutos y de nuevo es nulo … Hubo una pregunta sobre SO hace un año, pero nadie sabe la respuesta. Tal vez esta vez alguien tendrá alguna idea.
- No puedo cambiar InputType de EditText después de que lo fijé a TYPE_NULL
- Java.lang.Void vs void vs Null
- Error: valor nulo en la entrada: blameLogFolder = null
- Push Notifications usando Urban Dirigible devuelve apID como nulo en el primer lanzamiento
- FindViewById devuelve null - Android - setContentView
Creo que tiene algo que ver con AsyncTask como fuera de ella, tengo excepción catched correctamente … todavía no tienen ninguna pista por qué 🙁 he encontrado que sólo sucede cuando debbuger está conectado.Cuando saca el cable del dispositivo En realidad atrapa y la excepción ya no es nula …
- ¿Cómo podemos definir null como un tipo de datos en Android, como definimos nsNull en iPhone
- Android SQLite fts3: ¿Qué debo insertar: valores nulos O cadenas vacías?
- GCM devuelve un tipo de mensaje nulo
- Mi ubicación actual siempre devuelve null. ¿Cómo puedo arreglar esto?
- Error de petición de cadena de volea al pasar cadena con valor nulo como param
- ConnectivityManager getActiveNetworkInfo () siempre es nulo incluso con tráfico de datos activo
- FindViewByID devuelve null para CustomView
- En Java, ¿cómo verifica si una variable float es null?
Es imposible tener e
con valor nulo en ese punto. Si está depurando su aplicación usando Eclipse, mostrará el valor e.toString()
en ese punto y e.toString()
devolverá null
.
Pruebe otra prueba usando este código:
try { if (true) { throw new Exception("ERROR"); } } catch (Exception e) { if (e == null) { Log.e("e", "e is really null!!!"); } else { Log.e("e", "e is not null, toString is " + e + " and message is " + e.getMessage()); } }
Sé que esto es una vieja pregunta, pero esto sucedió conmigo también, y parece que el problema está con el depurador sí mismo!
Cuando ejecuto mi aplicación de eclipse ( ctrl + F11 ), captura una excepción adecuada ( e != null
).
Tuve este mismo problema …. Me pareció que era el depurador como las otras personas habían dicho. Así que lo que hice para depurar es simplemente poner el punto de interrupción en la primera línea del bloque catch, en lugar de derecho en el bloque catch. Parecía trabajar para mí!
Tuve exactamente el mismo problema extraño dentro de un AsyncTask, mientras que la depuración en un dispositivo real (Galaxy Tab 2). (Y sí, tengo "e is really null!!!"
Haciendo la prueba sugerida por @italo)
Para mí el problema misteriosamente se fue después de desenchufar el enchufe usb del dispositivo android y conectarlo de nuevo después (y luego ejecutar mi aplicación de nuevo).
Otra sugerencia, la limpieza y la reconstrucción del proyecto, como se explica aquí no lo solucionó para mí (pero tal vez para alguien más).
- Android: ¿Por qué crear imágenes específicas para ldpi, mdpi y hdpi?
- ¿Cómo puedo depurar esta excepción NullPointer?