pkpio / MDroid

Moodle for Android
https://play.google.com/store/apps/details?id=in.co.praveenkumar
GNU General Public License v3.0
36 stars 47 forks source link

Garbage collection and Out of Memory in emulator #38

Closed pkpio closed 9 years ago

pkpio commented 9 years ago

Although this has been noticed only in Emulator, it is possible that this might occur on real devices with low resources

pkpio commented 9 years ago

Logcat log below,

10-02 04:59:34.392: I/dalvikvm-heap(2108): Grow heap (frag case) to 22.453MB for 2359308-byte allocation
10-02 04:59:34.412: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 2% free 22922K/23236K, paused 12ms, total 12ms
10-02 04:59:34.462: D/dalvikvm(2108): GC_FOR_ALLOC freed 2318K, 2% free 20606K/20920K, paused 13ms, total 13ms
10-02 04:59:34.462: I/dalvikvm-heap(2108): Grow heap (frag case) to 22.441MB for 2359308-byte allocation
10-02 04:59:34.482: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 2% free 22910K/23228K, paused 16ms, total 16ms
10-02 04:59:34.552: D/dalvikvm(2108): GC_FOR_ALLOC freed 2494K, 2% free 20612K/20920K, paused 5ms, total 5ms
10-02 04:59:34.552: I/dalvikvm-heap(2108): Grow heap (frag case) to 22.447MB for 2359308-byte allocation
10-02 04:59:34.572: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 2% free 22916K/23228K, paused 19ms, total 19ms
10-02 04:59:34.612: D/dalvikvm(2108): GC_FOR_ALLOC freed 1K, 2% free 22921K/23228K, paused 12ms, total 12ms
10-02 04:59:34.612: I/dalvikvm-heap(2108): Grow heap (frag case) to 24.701MB for 2359308-byte allocation
10-02 04:59:34.632: D/dalvikvm(2108): GC_FOR_ALLOC freed 1K, 2% free 25224K/25536K, paused 15ms, total 15ms
10-02 04:59:34.672: D/dalvikvm(2108): GC_FOR_ALLOC freed 2304K, 2% free 22924K/23224K, paused 4ms, total 4ms
10-02 04:59:34.672: I/dalvikvm-heap(2108): Grow heap (frag case) to 24.704MB for 2359308-byte allocation
10-02 04:59:34.692: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 2% free 25228K/25532K, paused 21ms, total 21ms
10-02 04:59:34.752: D/dalvikvm(2108): GC_FOR_ALLOC freed 2305K, 2% free 22925K/23224K, paused 20ms, total 20ms
10-02 04:59:34.752: I/dalvikvm-heap(2108): Grow heap (frag case) to 24.705MB for 2359308-byte allocation
10-02 04:59:34.772: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 2% free 25229K/25532K, paused 23ms, total 23ms
10-02 04:59:34.832: D/dalvikvm(2108): GC_FOR_ALLOC freed 2304K, 2% free 22925K/23224K, paused 4ms, total 4ms
10-02 04:59:34.832: I/dalvikvm-heap(2108): Grow heap (frag case) to 24.705MB for 2359308-byte allocation
10-02 04:59:34.852: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 2% free 25229K/25532K, paused 20ms, total 20ms
10-02 04:59:35.292: D/dalvikvm(2108): GC_FOR_ALLOC freed 4K, 2% free 25248K/25532K, paused 9ms, total 9ms
10-02 04:59:35.292: I/dalvikvm-heap(2108): Grow heap (frag case) to 26.974MB for 2359308-byte allocation
10-02 04:59:35.312: D/dalvikvm(2108): GC_FOR_ALLOC freed 1K, 2% free 27550K/27840K, paused 15ms, total 15ms
10-02 04:59:35.352: D/dalvikvm(2108): GC_FOR_ALLOC freed 1K, 2% free 27551K/27840K, paused 5ms, total 5ms
10-02 04:59:35.352: I/dalvikvm-heap(2108): Grow heap (frag case) to 29.223MB for 2359308-byte allocation
10-02 04:59:35.372: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 1% free 29855K/30148K, paused 15ms, total 15ms
10-02 04:59:35.452: D/dalvikvm(2108): GC_FOR_ALLOC freed 2311K, 9% free 27608K/30148K, paused 4ms, total 4ms
10-02 04:59:35.452: I/dalvikvm-heap(2108): Grow heap (frag case) to 29.278MB for 2359308-byte allocation
10-02 04:59:35.462: D/dalvikvm(2108): GC_FOR_ALLOC freed 1K, 1% free 29911K/30148K, paused 13ms, total 13ms
10-02 04:59:35.522: D/dalvikvm(2108): GC_FOR_ALLOC freed 1K, 1% free 30062K/30296K, paused 10ms, total 10ms
10-02 04:59:35.522: I/dalvikvm-heap(2108): Grow heap (frag case) to 31.675MB for 2359308-byte allocation
10-02 04:59:35.552: I/dalvikvm-heap(2108): Clamp target GC heap from 33.675MB to 32.000MB
10-02 04:59:35.552: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 1% free 32366K/32604K, paused 4ms, total 4ms
10-02 04:59:35.562: D/dalvikvm(2108): GC_FOR_ALLOC freed 2304K, 8% free 30063K/32604K, paused 4ms, total 5ms
10-02 04:59:35.562: I/dalvikvm-heap(2108): Grow heap (frag case) to 31.676MB for 2359308-byte allocation
10-02 04:59:35.602: I/dalvikvm-heap(2108): Clamp target GC heap from 33.675MB to 32.000MB
10-02 04:59:35.602: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 1% free 32367K/32604K, paused 4ms, total 4ms
10-02 04:59:35.612: I/dalvikvm-heap(2108): Clamp target GC heap from 33.682MB to 32.000MB
10-02 04:59:35.622: D/dalvikvm(2108): GC_FOR_ALLOC freed <1K, 1% free 32374K/32604K, paused 13ms, total 13ms
10-02 04:59:35.622: I/dalvikvm-heap(2108): Forcing collection of SoftReferences for 2359308-byte allocation
10-02 04:59:35.632: I/dalvikvm-heap(2108): Clamp target GC heap from 33.673MB to 32.000MB
10-02 04:59:35.632: D/dalvikvm(2108): GC_BEFORE_OOM freed 71K, 1% free 32302K/32604K, paused 10ms, total 10ms
10-02 04:59:35.632: E/dalvikvm-heap(2108): Out of memory on a 2359308-byte allocation.
10-02 04:59:35.632: I/dalvikvm(2108): "main" prio=5 tid=1 RUNNABLE
10-02 04:59:35.632: I/dalvikvm(2108):   | group="main" sCount=0 dsCount=0 obj=0xb2d3cbd8 self=0xb97944e0
10-02 04:59:35.642: I/dalvikvm(2108):   | sysTid=2108 nice=0 sched=0/0 cgrp=[fopen-error:2] handle=-1216700320
10-02 04:59:35.642: I/dalvikvm(2108):   | state=R schedstat=( 0 0 0 ) utm=62 stm=10 core=0
10-02 04:59:35.642: I/dalvikvm(2108):   at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
10-02 04:59:35.652: I/dalvikvm(2108):   at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:587)
10-02 04:59:35.652: I/dalvikvm(2108):   at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:422)
10-02 04:59:35.652: I/dalvikvm(2108):   at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:840)
10-02 04:59:35.652: I/dalvikvm(2108):   at android.content.res.Resources.loadDrawable(Resources.java:2115)
10-02 04:59:35.652: I/dalvikvm(2108):   at android.content.res.Resources.getDrawable(Resources.java:700)
10-02 04:59:35.652: I/dalvikvm(2108):   at android.widget.ImageView.resolveUri(ImageView.java:638)
10-02 04:59:35.652: I/dalvikvm(2108):   at android.widget.ImageView.setImageResource(ImageView.java:367)
10-02 04:59:35.652: I/dalvikvm(2108):   at in.co.praveenkumar.mdroid.fragment.LeftNavigationFragment$LeftNavListAdapter.getView(LeftNavigationFragment.java:242)
10-02 04:59:35.662: I/dalvikvm(2108):   at android.widget.AbsListView.obtainView(AbsListView.java:2263)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.ListView.makeAndAddView(ListView.java:1790)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.ListView.fillDown(ListView.java:691)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.ListView.fillSpecific(ListView.java:1349)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.ListView.layoutChildren(ListView.java:1620)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.AbsListView.onLayout(AbsListView.java:2091)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.LinearLayout.onLayout(LinearLayout.java:1434)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.support.v4.widget.DrawerLayout.onLayout(DrawerLayout.java:825)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: I/dalvikvm(2108):   at com.android.internal.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:374)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1987)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1744)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1000)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5670)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.Choreographer.doCallbacks(Choreographer.java:574)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.Choreographer.doFrame(Choreographer.java:544)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.os.Handler.handleCallback(Handler.java:733)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.os.Handler.dispatchMessage(Handler.java:95)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.os.Looper.loop(Looper.java:136)
10-02 04:59:35.672: I/dalvikvm(2108):   at android.app.ActivityThread.main(ActivityThread.java:5017)
10-02 04:59:35.672: I/dalvikvm(2108):   at java.lang.reflect.Method.invokeNative(Native Method)
10-02 04:59:35.672: I/dalvikvm(2108):   at java.lang.reflect.Method.invoke(Method.java:515)
10-02 04:59:35.672: I/dalvikvm(2108):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
10-02 04:59:35.672: I/dalvikvm(2108):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
10-02 04:59:35.672: I/dalvikvm(2108):   at dalvik.system.NativeStart.main(Native Method)
10-02 04:59:35.672: D/skia(2108): --- allocation failed for scaled bitmap
10-02 04:59:35.672: D/AndroidRuntime(2108): Shutting down VM
10-02 04:59:35.672: W/dalvikvm(2108): threadid=1: thread exiting with uncaught exception (group=0xb2d3bb20)
10-02 04:59:35.672: E/AndroidRuntime(2108): FATAL EXCEPTION: main
10-02 04:59:35.672: E/AndroidRuntime(2108): Process: in.co.praveenkumar.mdroid.legacy, PID: 2108
10-02 04:59:35.672: E/AndroidRuntime(2108): java.lang.OutOfMemoryError
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:587)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:422)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:840)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.content.res.Resources.loadDrawable(Resources.java:2115)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.content.res.Resources.getDrawable(Resources.java:700)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.ImageView.resolveUri(ImageView.java:638)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.ImageView.setImageResource(ImageView.java:367)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at in.co.praveenkumar.mdroid.fragment.LeftNavigationFragment$LeftNavListAdapter.getView(LeftNavigationFragment.java:242)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.AbsListView.obtainView(AbsListView.java:2263)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.ListView.makeAndAddView(ListView.java:1790)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.ListView.fillDown(ListView.java:691)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.ListView.fillSpecific(ListView.java:1349)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.ListView.layoutChildren(ListView.java:1620)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.AbsListView.onLayout(AbsListView.java:2091)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.LinearLayout.onLayout(LinearLayout.java:1434)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.support.v4.widget.DrawerLayout.onLayout(DrawerLayout.java:825)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at com.android.internal.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:374)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.View.layout(View.java:14817)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1987)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1744)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1000)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5670)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.Choreographer.doCallbacks(Choreographer.java:574)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.Choreographer.doFrame(Choreographer.java:544)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.os.Handler.handleCallback(Handler.java:733)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.os.Handler.dispatchMessage(Handler.java:95)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.os.Looper.loop(Looper.java:136)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at android.app.ActivityThread.main(ActivityThread.java:5017)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at java.lang.reflect.Method.invokeNative(Native Method)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at java.lang.reflect.Method.invoke(Method.java:515)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
10-02 04:59:35.672: E/AndroidRuntime(2108):     at dalvik.system.NativeStart.main(Native Method)
10-02 04:59:36.032: I/dalvikvm-heap(2108): Clamp target GC heap from 33.752MB to 32.000MB
10-02 04:59:36.042: D/dalvikvm(2108): GC_FOR_ALLOC freed 251K, 2% free 32383K/32768K, paused 22ms, total 23ms
10-02 04:59:36.052: D/SQL Log(2108): SQLiteQuery: SELECT * FROM MOODLE_CONTACT WHERE contactid = ? and siteid = ?
10-02 04:59:36.062: I/Sugar(2108): MoodleContact saved : 1
10-02 04:59:36.062: D/SQL Log(2108): SQLiteQuery: SELECT * FROM MOODLE_CONTACT WHERE contactid = ? and siteid = ?
10-02 04:59:36.062: I/Sugar(2108): MoodleContact saved : 2
10-02 04:59:36.072: D/SQL Log(2108): SQLiteQuery: SELECT * FROM MOODLE_SITE_INFO WHERE id=? LIMIT 1
10-02 04:59:36.072: D/MoodleRestCall(2108): http://193.137.46.10/default_site/Moody/webservice/rest/server.php?wstoken=0b11e34fcb067709d29a3876ec9c756c&wsfunction=core_enrol_get_users_courses&moodlewsrestformat=json&userid=17
10-02 04:59:37.602: I/dalvikvm-heap(2108): Clamp target GC heap from 33.773MB to 32.000MB
10-02 04:59:37.602: D/dalvikvm(2108): GC_FOR_ALLOC freed 231K, 2% free 32403K/32768K, paused 29ms, total 29ms
10-02 04:59:37.622: D/SQL Log(2108): SQLiteQuery: SELECT * FROM MOODLE_COURSE WHERE courseid = ? and siteid = ?
10-02 04:59:37.642: I/Sugar(2108): MoodleCourse saved : 1
10-02 04:59:37.642: D/SQL Log(2108): SQLiteQuery: SELECT * FROM MOODLE_COURSE WHERE courseid = ? and siteid = ?
10-02 04:59:37.652: I/Sugar(2108): MoodleCourse saved : 2
10-02 04:59:37.652: D/SQL Log(2108): SQLiteQuery: SELECT * FROM MOODLE_COURSE WHERE courseid = ? and siteid = ?
10-02 04:59:37.672: I/Sugar(2108): MoodleCourse saved : 3
10-02 04:59:37.672: D/SQL Log(2108): SQLiteQuery: SELECT * FROM MOODLE_COURSE WHERE courseid = ? and siteid = ?
10-02 04:59:37.682: I/Sugar(2108): MoodleCourse saved : 4
10-02 04:59:37.682: D/SQL Log(2108): SQLiteQuery: SELECT * FROM MOODLE_COURSE WHERE courseid = ? and siteid = ?
10-02 04:59:37.702: I/Sugar(2108): MoodleCourse saved : 5
10-02 04:59:37.702: D/SQL Log(2108): SQLiteQuery: SELECT * FROM MOODLE_COURSE WHERE courseid = ? and siteid = ?
10-02 04:59:37.712: I/Sugar(2108): MoodleCourse saved : 6
pkpio commented 9 years ago

Now this is a serious problem as I just came across this on Galaxy S2 while setting different backgrounds for card based on state.

Possible reasons could be, No separate drawable for each device size. Android doing the scaling might be increasing the drawable size and causing OutOfMemory error.

pkpio commented 9 years ago

Some references:

http://stackoverflow.com/questions/20874081/android-view-inflateexception-binary-xml-file-line-8

http://stackoverflow.com/questions/2605999/android-how-to-track-down-the-origin-of-a-inflateexception

http://stackoverflow.com/questions/4512981/android-view-inflateexception-binary-xml-file-line-12-error-inflating-class?rq=1

pkpio commented 9 years ago

Resolving doc:

Earlier, all drawables were kept in the drawable folder. Since the density is not specified for this folder, Android assumes mdpi as the density of all icons in that folder.

Note that most of the icons are of size 512x512. Not a size that we really need.

Now when the app is opened in a device of density hdpi (>mdpi), these icons are scaled as per the scaling factor. This results in a larger bitmap after translation since the low density icons themselves are of redundantly high resolution and thus causing OutOfMemory error.

We placed them in the highest density folder, drawable-xxxhdpi, so that any icon scaling would only be a down scaling and thus eliminating the issue with OutOfMemory.