в чем разница между кучей dalvik и родной кучей в android? который крепится.?

Я думаю, Dalvik куча исправлена для android приложения. как 64MB, 96MB etc.

правильно ли это ?.

Если это так, является ли собственная куча также фиксированной к некоторому размеру ? или будет расти в зависимости от использования приложения?

кто-нибудь может мне помочь? спасибо.

1 ответов


Я думаю, Dalvik куча исправлена для android приложения. как 64MB, 96MB etc.
Правильно ли это?.

Android предлагает определенное значение для приложений в качестве предела на основе версии Android (getMemoryClass() API класса ActivityManager даст вам значение для устройства, на котором работает ваш код), но поставщики настраивают его, чтобы увеличить его с запасом, который соответствует их требованиям (например, в случае аппаратного обеспечения, поддерживающего более высокие разрешения экрана, как больше разрешения будут использовать большие растровые изображения).

если это так, является ли собственная куча также фиксированной к некоторому размеру ? или будет расти в зависимости от использования приложения?

Да, нет жесткого ограничения, как он растет в зависимости от использования. Вы можете использовать столько памяти, сколько доступно устройству (т. е. общая память - память, используемая другими программами). Когда Android думает, что у него мало памяти, то на основе многих факторов (будь то на переднем плане или предоставление услуг для некоторых приложений переднего плана), он начнет убивать процессы. Вы можете получить дополнительную информацию о памяти устройства с помощью android.app.ActivityManager.MemoryInfo. Кроме того, начиная с Android 3.0, приложения могут запрашивать большую кучу (хотя, следует избегать ее до тех пор, пока она не станет полностью неизбежной). Вы можете увеличить размер кучи, используя android:largeheap="true" в файле манифеста