I am experiencing a big probleme on Android Honeycomb 3.0 (Acer Iconia). I don't use any openGL view, I only set in the manifest
android:hardwareAccelerated="true"
The fact is that when I load a view with a certain amount of pictures, and I change its content and background several times on clicking on a button, my intent finishes and the previous intent appears. I thinks I well manage memory. This message appears when it appends:
06-22 10:13:53.510: ERROR/libEGL(951): call to OpenGL ES API with no current context (logged once per thread)
06-22 10:14:03.150: ERROR/InputDispatcher(113): channel '4098b530 com.mycompany.myapp/com.mycompany.myapp.FolderActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x8
06-22 10:14:03.150: ERROR/InputDispatcher(113): channel '4098b530 com.mycompany.myapp/com.mycompany.myapp.FolderActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
06-22 10:14:03.150: ERROR/InputDispatcher(113): channel '409d30e0 com.mycompany.myapp/mycompany.myapp.GalleryActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x8
06-22 10:14:03.150: ERROR/InputDispatcher(113): channel '409d30e0 com.mycompany.myapp/mycompany.myapp.GalleryActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
When I set this I have no crash, but it's very laggy:
android:hardwareAccelerated="false"
Ok guys, I found the solution :) I updated my tab to Android 3.1, that gave me the real error, OutOfMemoryError. I was allocating my background on a button click. So I now make a
instead of BitmapDrawable and disable my button until the background is well set (in order to avoid two big BitmapDrawable creation at the same time).
Hoping it will help you, poor 3.0 developpers ^^
Edit: Here is a class I created to manage cache: