This has been driving me nuts and I'm hoping someone will be able to help me understand what is happening (or better yet, how to fix it! ;-).
I set the background image in one of my apps to the system wallpaper image using the following code: Drawable wp = this.getWallpaper(); background = (ImageView) findViewById(R.id.background); background.setImageDrawable(wp); This seems to work fine, but periodically, I get the out of memory error shown below. Actually, on the emulator, all I have to do is repeatedly rotate the device and this error will consistently happen after 10-12 rotations. On the G1, opening and closing the keyboard doesn't seem to cause this, but I'll still get the failure every once in a while. Is getWallpaper() actually making a copy of the image (I would have thought I'd just get a refernece to the existing bitmap)? Do I need to do anything special to free the image? 08-17 08:32:37.943: ERROR/dalvikvm-heap(1597): 614400-byte external allocation too large for this process. 08-17 08:32:37.943: ERROR/(1597): VM won't let us allocate 614400 bytes 08-17 08:32:38.054: DEBUG/AndroidRuntime(1597): Shutting down VM 08-17 08:32:38.054: WARN/dalvikvm(1597): threadid=3: thread exiting with uncaught exception (group=0x4000fe70) 08-17 08:32:38.054: ERROR/AndroidRuntime(1597): Uncaught handler: thread main exiting due to uncaught exception 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): java.lang.OutOfMemoryError: bitmap size exceeds VM budget 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.graphics.BitmapFactory.nativeDecodeFileDescriptor(Native Method) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.graphics.BitmapFactory.decodeFileDescriptor(BitmapFactory.java: 424) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.app.ApplicationContext.getCurrentWallpaperLocked (ApplicationContext.java:523) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.app.ApplicationContext.peekWallpaper(ApplicationContext.java: 515) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.app.ApplicationContext.getWallpaper(ApplicationContext.java: 504) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.content.ContextWrapper.getWallpaper(ContextWrapper.java:201) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at ....onCreate (MyApp.java:247) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java: 1123) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java: 2231) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java: 2284) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.app.ActivityThread.access$1800(ActivityThread.java:112) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1692) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.os.Handler.dispatchMessage(Handler.java:99) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.os.Looper.loop(Looper.java:123) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at android.app.ActivityThread.main(ActivityThread.java:3948) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at java.lang.reflect.Method.invokeNative(Native Method) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at java.lang.reflect.Method.invoke(Method.java:521) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:782) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540) 08-17 08:32:38.313: ERROR/AndroidRuntime(1597): at dalvik.system.NativeStart.main(Native Method) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---