Android has this particular annoying and weird behavior: Once the heap inflates to a certain size, no matter how much of it is actually used, you can no longer allocate files that are larger than the remaining memory.
On Thursday, May 8, 2014 5:47:06 PM UTC+3, Daniel Rindt wrote:
-- my guess, you're there.
you should make sure your previous activities use as little memory as possible and make it a habit of unloading memory which might not be necessary once activities are changed. This is especially true in apps that store large bitmaps and even more noticeable if you also have lots of small objects (memory fragmentation + large bitmaps = OOM exceptions)
On Thursday, May 8, 2014 5:47:06 PM UTC+3, Daniel Rindt wrote:
Hello,
in the application we open a chooser for selecting photos. I got frequently crashes mostly from sony by doing this which says: OutOfMemoryError which raises by showing the bitmaps. The stacktrace which the
system creates doesn't mention a class of our code which confuses me a bit.
My assumption is that our app can open lots of activities and by opening the image choose there is not much space left and the crash happen. So far i read i shouldn't care about do finish(); and activity they
can remain in the activity backstack. It would be great to get a bit more clued.
Here is the stacktrace i got:Package: com.viselabs.aquariummanager Version Code: 34 Version Name: 0.16.34.g3cc9d12 Android: 4.3 Manufacturer: samsung Model: SPH-L710 Date: Thu May 08 09:13:04 EDT 2014 java.lang.RuntimeException: Unable to start activity ComponentInfo{android/com.android.internal.app. ChooserActivity}: android.view.InflateException: Binary XML file line #26: Error inflating class <unknown> at android.app.ActivityThread. performLaunchActivity( ActivityThread.java:2305) at android.app.ActivityThread. handleLaunchActivity( ActivityThread.java:2359) at android.app.ActivityThread. access$700(ActivityThread. java:165) at android.app.ActivityThread$H. handleMessage(ActivityThread. java:1326) at android.os.Handler. dispatchMessage(Handler.java: 99) at android.os.Looper.loop(Looper. java:137) at android.app.ActivityThread. main(ActivityThread.java:5455) at java.lang.reflect.Method. invokeNative(Native Method) at java.lang.reflect.Method. invoke(Method.java:525) at com.android.internal.os. ZygoteInit$ MethodAndArgsCaller.run( ZygoteInit.java:1187) at com.android.internal.os. ZygoteInit.main(ZygoteInit. java:1003) at dalvik.system.NativeStart. main(Native Method) Caused by: android.view.InflateException: Binary XML file line #26: Error inflating class <unknown> at android.view.LayoutInflater. createView(LayoutInflater. java:626) at com.android.internal.policy. impl.PhoneLayoutInflater. onCreateView( PhoneLayoutInflater.java:56) at android.view.LayoutInflater. onCreateView(LayoutInflater. java:675) at android.view.LayoutInflater. createViewFromTag( LayoutInflater.java:700) at android.view.LayoutInflater. rInflate(LayoutInflater.java: 761) at android.view.LayoutInflater. rInflate(LayoutInflater.java: 769) at android.view.LayoutInflater. inflate(LayoutInflater.java: 498) at android.view.LayoutInflater. inflate(LayoutInflater.java: 398) at android.view.LayoutInflater. inflate(LayoutInflater.java: 354) at com.android.internal.app. ResolverActivity.onCreate( ResolverActivity.java:210) at com.android.internal.app. ChooserActivity.onCreate( ChooserActivity.java:69) at android.app.Activity. performCreate(Activity.java: 5372) at android.app.Instrumentation. callActivityOnCreate( Instrumentation.java:1104) at android.app.ActivityThread. performLaunchActivity( ActivityThread.java:2267) ... 11 more Caused by: java.lang.reflect. InvocationTargetException at java.lang.reflect.Constructor. constructNative(Native Method) at java.lang.reflect.Constructor. newInstance(Constructor.java: 417) at android.view.LayoutInflater. createView(LayoutInflater. java:600) ... 24 more Caused by: java.lang.OutOfMemoryError at android.graphics. BitmapFactory. nativeDecodeAsset(Native Method) at android.graphics. BitmapFactory.decodeStream( BitmapFactory.java:596) at android.graphics. BitmapFactory. decodeResourceStream( BitmapFactory.java:444) at android.graphics.drawable. Drawable. createFromResourceStream( Drawable.java:832) at android.content.res.Resources. loadDrawable(Resources.java: 2988) at android.content.res.Resources. getDrawable(Resources.java: 1558) at android.widget.EdgeEffect.< init>(EdgeEffect.java:148) at android.widget.AbsListView. setOverScrollMode(AbsListView. java:1220) at android.view.View.<init>(View. java:3458) at android.view.View.<init>(View. java:3528) at android.view.ViewGroup.<init>( ViewGroup.java:475) at android.widget.AdapterView.< init>(AdapterView.java:236) at android.widget.AbsListView.< init>(AbsListView.java:1105) at android.widget.GridView.<init> (GridView.java:110) at android.widget.GridView.<init> (GridView.java:106) ... 27 more
It would be nice to get some information about what are you think about.
Thank you for your attention and support.
Daniel
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+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
---
You received this message because you are subscribed to the Google Groups "Android Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to android-developers+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
No comments:
Post a Comment