Пользовательский размер кучи на платформе Android? - PullRequest
4 голосов
/ 24 июля 2010

Команда разработчиков в нашем выпускном проекте попросила увеличить размер кучи на процесс в Android.Они сказали, что по умолчанию «16 МБ», что для них недостаточно.Как я могу настроить размер?

Я нашел закомментированную строку в файле: /acme/my_board/BoardConfig.mk в исходном коде Android:

# USE_CUSTOM_RUNTIME_HEAP_MAX := "64M"

Это то, что мне нужно отредактировать ??

Ответы [ 2 ]

3 голосов
/ 24 июля 2010

В вашем методе onCreate в вашей деятельности или, если вы хотите, чтобы он был для всех ваших приложений в пакете, в onCreate пользовательского объекта Application, добавьте

dalvik.system.VMRuntime.getRuntime().setMinimumHeapSize(yournumberhere);

Редактировать: Также обратите внимание, что Android автоматически увеличит размер кучи, если ему потребуется больше. Таким образом, хотя по умолчанию может быть 16, если ему нужно больше, оно будет увеличиваться. Однако это может привести к небольшому скачку в ситуации реального времени, что плохо. Поэтому, если вы знаете, что он превысит 16, хорошо сделать это заранее.

1 голос
/ 28 июля 2010

Я получил этот ответ через список рассылки android-платформы

Вы можете изменить platform/dalvik/vm/Init.c

Например, чтобы сделать его 32 МБ, вы можете сделать ниже

gDvm.heapSizeMax = 32 * 1024 * 1024;

Другой предлагаемый подход - обновить system.prop

С уважением, Мутху Субраманиам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...