Wie kann man das Speicher-Leck in der SurfaceView
Traf ich ein memory leak Problem in surfaceview.
Definiere ich eine benutzerdefinierte Ansicht Meineansicht, die sich von surfaceview.
int Layout file
<com.andoird.example.MyView
....
....
/>
und setContentView in onCreate();
nach beenden der Aktivität.
Ich bekomme das log unten;
Zeigen Sie die Speicher-Leck in der Oberfläche anzeigen.
Ich hoffe jemand kann mir helfen diese zu lösen. Danke!
Android 4.2.
Log 1:
08-16 16:29:23.751 E/StrictMode(23220): A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks.
08-16 16:29:23.751 E/StrictMode(23220): java.lang.Throwable: Explicit termination method 'release' not called
08-16 16:29:23.751 E/StrictMode(23220): at dalvik.system.CloseGuard.open(CloseGuard.java:184)
08-16 16:29:23.751 E/StrictMode(23220): at android.view.Surface.<init>(Surface.java:293)
08-16 16:29:23.751 E/StrictMode(23220): at android.view.SurfaceView.<init>(SurfaceView.java:101)
Log 2
08-16 16:29:23.751 E/StrictMode(23220): A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks.
08-16 16:29:23.751 E/StrictMode(23220): java.lang.Throwable: Explicit termination method 'release' not called
08-16 16:29:23.751 E/StrictMode(23220): at dalvik.system.CloseGuard.open(CloseGuard.java:184)
08-16 16:29:23.751 E/StrictMode(23220): at android.view.Surface.<init>(Surface.java:293)
08-16 16:29:23.751 E/StrictMode(23220): at android.view.SurfaceView.<init>(SurfaceView.java:102)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fand ich die Problemumgehung für dieses Problem.
Sie sollte einfach anrufen:
in Ihrer Kontrolle von der Tätigkeit
onDestroy()
Etwas wie dieses: