Память используется скелет приложения для Android - PullRequest
0 голосов
/ 22 марта 2012

Пытаясь понять использование памяти в приложениях для Android (с целью профилирования моей игры), я создал новый проект для Android в Eclipse, затем запустил его и посмотрел на использование памяти.

похожехотя даже скелетное приложение использует более 2,5 МБ памяти.В конце этого поста вставляется дамп дерева доминирования из MAT Eclipse.Имеет ли это смысл?

Если я работаю с жестким лимитом (обычно) 16 МБ и должен оставить место для других приложений, каков приблизительный объем памяти для моего собственного кода?

ура

Название класса |Мелкая куча |Сохраненная куча |Процент

org.apache.harmony.xnet.provider.jsse.TrustManagerImpl @ 0x40462d80 |24 |228 704 |10,43% class android.text.Html $ HtmlParser @ 0x40185640 Системный класс |8 |126,632 |5,77% org.bouncycastle.jce.provider.BouncyCastleProvider @ 0x400eaf50 |112 |62 688 |2.86% класс org.apache.harmony.security.fortress.Services @ 0x400e1370 Системный класс |32 |53,880 |2,46% класс com.android.internal.R $ styleable @ 0x40086f00 Системный класс |4,592 |38,288 |1,75% класс android.R $ styleable @ 0x400520c8 Системный класс |4,512 |37,856 |1,73% класс libcore.icu.TimeZones $ CachedTimeZones @ 0x40440680 Системный класс |16 |37,712 |1.72% class android.content.res.Resources @ 0x40071678 Системный класс |40 |37,176 |1.69% class android.text.AutoText @ 0x40170bd0 Системный класс |56 |31 656 |1,44%org.bouncycastle.jce.provider.JDKKeyStore @ 0x4024c830 | 16 | 16 200 | 0,74% символ [8060] @ 0x400b8a08 Африки / AbidjanAfrica / AccraAfrica / Addis_AbabaAfrica / AlgiersAfrica / AsmaraAfrica / AsmeraAfrica / BamakoAfrica / BanguiAfrica / BanjulAfrica / BissauAfrica / BlantyreAfrica / BrazzavilleAfrica / BujumburaAfrica / CairoAfrica / CasablancaAfrica / CeutaAfrica / ConakryAfrica / DakarAfri ... | 16,136 | 16,136 | 0,74% class org.apache.harmony.security.utils.AlgNameMapper @ 0x40084650 Системный класс | 24 | 15,336 | 0,70% android.content.res.StringBlock @ 0x40171268 | 32 | 12,088 | 0,55% class org.bouncycastle.crypto.engines.AESFastEngine @ 0x40076930 Системный класс | 64 | 9,440 | 0,43% класс android.opengl.GLES20 @ 0x400313a0 Системный класс | 1,216 | 8,480 | 0,39% class org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnectionImpl @ 0x40046ee0 System Class | 8 | 7,776 | 0,35% class org.apache.harmony.luni.internal.util.ZoneInfoDB @ 0x400a13a0 Системный класс | 40 | 7,640 | 0,35% класс java.lang.System @ 0x40010540 Системный класс | 24 | 7,360 | 0,34% класс com.ibm.icu4jni.util.LocaleData @ 0x4000e0b0 Системный класс | 8 | 6,768 | 0,31% класс android.opengl.GLES10 @ 0x4002e330 Системный класс | 968 | 6,768 | 0,31% класс javax.microedition.khronos.opengles.GL10 @ 0x4002b3a8 Системный класс | 952 | 6,656 | 0,30%класс java.lang.Character $ UnicodeBlock @ 0x40217b78 Системный класс | 512 | 6 112 | 0,28% класс android.provider.Settings $ System @ 0x401680a0 Системный класс | 568 | 6 008 | 0,27%

org.apache.harmony.security.provider.crypto.CryptoProvider @ 0x40151888 | 112 | 5,512 | 0,25%

1 Ответ

1 голос
/ 08 октября 2012

Здесь нет проблем.Базовое приложение будет использовать несколько мегабайт оперативной памяти.

Если я работаю с жестким ограничением (обычно) 16 МБ, и должно оставить место для других приложений

Вам не нужно беспокоиться о других приложениях.ОС Android будет сортировать это.И минимум, как правило, составляет 16 мегабайт на приложение, а не общее количество приложений, как вы сказали.

...