Se adquirió un recurso en el seguimiento de la pila adjunta pero nunca se liberó. Consulte java.io.Closeable para obtener información sobre cómo evitar fugas de recursos.

Resuelto dreamer1989 asked hace 54 años • 7 respuestas

Recibo este mensaje en logcat

Se adquirió un recurso en el seguimiento de la pila adjunta pero nunca se liberó. Consulte java.io.Closeable para obtener información sobre cómo evitar fugas de recursos.

¿Dónde busco la fuga y qué significa "Ver java.io.Closeable"?

dreamer1989 avatar Jan 01 '70 08:01 dreamer1989
Aceptado

Para mí, el problema ocurrió porque estaba anulando el método onBackPressed()sin llamar alsuper()

@Override
public void onBackPressed() {
    //some coding here
    super.onBackPressed();
}
superpuccio avatar Jun 26 '2015 08:06 superpuccio

si ves algo como:

10-12 16:46:44.719 2710-2719/? E/StrictMode: A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks.
10-12 16:46:44.719 2710-2719/? E/StrictMode: java.lang.Throwable: Explicit termination method 'end' not called
10-12 16:46:44.719 2710-2719/? E/StrictMode:     at dalvik.system.CloseGuard.open(CloseGuard.java:184)
10-12 16:46:44.719 2710-2719/? E/StrictMode:     at java.util.zip.Inflater.<init>(Inflater.java:82)
10-12 16:46:44.719 2710-2719/? E/StrictMode:     at com.android.okio.GzipSource.<init>(GzipSource.java:57)
10-12 16:46:44.719 2710-2719/? E/StrictMode:     at com.android.okhttp.internal.http.HttpEngine.initContentStream(HttpEngine.java:490)

En su seguimiento de pila, hay un error conocido en versiones anteriores de okhttp que puede evitar forzando el uso de una versión más nueva en su archivo gradle.

compilar 'com.squareup.okhttp3:okhttp:3.2.0'

Eso resolvió un problema muy similar al menos para mí.

Carl-Emil Kjellstrand avatar May 02 '2016 09:05 Carl-Emil Kjellstrand