Android-universal-image-loader: java.lang.NullPointerException en StorageUtils.getCacheDirectory

Creado en 20 jun. 2014  ·  3Comentarios  ·  Fuente: nostra13/Android-Universal-Image-Loader

Hola. Recibí un registro de errores de mi usuario.

java.lang.RuntimeException: Unable to create application my.CustomApplication: java.lang.NullPointerException
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4584)
at android.app.ActivityThread.access$1600(ActivityThread.java:161)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1325)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(ActivityThread.java:5356)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NullPointerException
at android.os.Environment.getStorageState(Environment.java:715)
at android.os.Environment.getExternalStorageState(Environment.java:690)
at com.nostra13.universalimageloader.utils.getCacheDirectory(SourceFile:68)
at my.CustomApplication.onCreate(SourceFile:97)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1025)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4581)
... 10 more

Especificaciones del dispositivo:
Modelo SCH-I545
Android 4.2.2

Mi línea №97

File cacheDir = StorageUtils.getCacheDirectory(getApplicationContext());
Bug

Comentario más útil

Tengo un informe similar del usuario (Dispositivo: Samsung GT-I9300, Android 4.3), UIL v 1.9.1.
Parte más interesante de un stacktrace:

at android.os.Environment.getExternalStorageState(Environment.java:598)
at com.nostra13.universalimageloader.utils.StorageUtils.java.io.File getCacheDirectory(android.content.Context,boolean)(SourceFile:68)
at com.nostra13.universalimageloader.core.ImageLoaderConfiguration$Builder.com.nostra13.universalimageloader.core.ImageLoaderConfiguration build()(SourceFile:545)

Busqué en las fuentes de
Parece que puede producir NPE si se lanza Exception en las líneas 66-69 o StorageManager # getPrimaryVolume () devuelve nulo.
La solución sucia es detectar NPE y asumir que el almacenamiento externo no está montado si se lanza.

Todos 3 comentarios

Hola. ¿Qué versión de UIL?

Estoy usando fuentes. Mi submódulo Android-Universal-Image-Loader enlace a cfd8fa982243

Tengo un informe similar del usuario (Dispositivo: Samsung GT-I9300, Android 4.3), UIL v 1.9.1.
Parte más interesante de un stacktrace:

at android.os.Environment.getExternalStorageState(Environment.java:598)
at com.nostra13.universalimageloader.utils.StorageUtils.java.io.File getCacheDirectory(android.content.Context,boolean)(SourceFile:68)
at com.nostra13.universalimageloader.core.ImageLoaderConfiguration$Builder.com.nostra13.universalimageloader.core.ImageLoaderConfiguration build()(SourceFile:545)

Busqué en las fuentes de
Parece que puede producir NPE si se lanza Exception en las líneas 66-69 o StorageManager # getPrimaryVolume () devuelve nulo.
La solución sucia es detectar NPE y asumir que el almacenamiento externo no está montado si se lanza.

¿Fue útil esta página
0 / 5 - 0 calificaciones