user1132897
user1132897

Reputation: 1201

Interpreting Android Memory Info

I just ran the following command in the terminal while my application was running on a connected device. adb shell dumpsys meminfo com.mine.application Once I get the table, I also get a list of "Asset Allocations" which look like this:

Asset Allocations
zip:/data/app/com.mine.application-1.apk:/resources.arsc: 115K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3
85K

This happens after I run through parts of my application several times. Am I correct in thinking that this means the Helvetica fonts are being allocated that many times? And are using up all that memory added together? Also, since these allocations are not removed once I exit that particular activity, am I correct in thinking that this is a memory leak?

If this is true, would I just make sure to null out any references to the fonts upon onPause in order to fix this? Thanks.

Upvotes: 3

Views: 707

Answers (1)

David Wasser
David Wasser

Reputation: 95568

There is a documented Android bug that Typeface.createFromAsset() leaks memory.

See http://code.google.com/p/android/issues/detail?id=9904

Upvotes: 4

Related Questions