Подтвердить что ты не робот

Сколько памяти может использовать iPhone-приложение?

Может ли кто-нибудь связать меня со страницей, которая описывает выделение памяти для приложений iPhone.

Я слышал, что вы ограничены песочницей ~ 20 мегабайт, в зависимости от состояния телефона, но я не могу найти источник этого.

4b9b3361

Ответ 1

Это зависит от устройства, которое вы используете. Я обнаружил, что с iPhone 3G, когда общая память, используемая вашим приложением, превышает 10-14 МБ, она уязвима для сбоев. Когда он достигнет 20 МБ, он обязательно потерпит крах.

Насколько я знаю, Apple не дает никаких твердых цифр для памяти, которую вы можете использовать. Он всегда меняется, поэтому трудно его закрепить. Они рекомендуют вам полагаться на предупреждения о памяти и отвечать на них соответствующим образом.

iPhone 3GS имеет гораздо больший объем памяти, доступный для приложений (я слышал, что это примерно 4 раза). Хотя iPhone 3GS только удваивает память iPhone 3G, большая часть этой памяти занята ОС. Для приложений очень мало осталось. Именно поэтому 3GS позволит приложениям использовать гораздо больше памяти.

Кроме того, может быть много памяти, уже используемой ОС. Одним из примеров является то, что сафари сохраняет много вкладок открытым. Вот почему многие игры рекомендуют перезагружать устройство, если он сильно падает.

Когда вы программируете, следите за увеличением памяти (из-за неправильного освобождения объектов) и пиковой памяти. Эта проблема больше связана с тестированием в реальном мире (как можно больше устройств) и хорошей практикой программирования.

Вот статья, чтобы больше узнать о том, как бороться с проблемами памяти:

http://akosma.com/2009/01/28/10-iphone-memory-management-tips/

Ответ 2

Этот инструмент определяет максимальную емкость памяти любого устройства iOS. Он также может найти, на каком уровне памяти вы получили предупреждение о низкой памяти.

вот ссылка: https://github.com/Split82/iOSMemoryBudgetTest

Ответ 3

Это зависит от текущего состояния устройства. Некоторые родные приложения для iPhone могут работать в фоновом режиме и отвлекать ресурсы устройств (Mail, Safari, Sms, Phone...) Поэтому трудно сказать, сколько памяти у вас получит... В идеале ваше приложение должно оставаться в пределах 10-12 Мб для успешного решения любых проблем с памятью.

Ответ 4

Я считаю, что это

  • Предупреждения памяти при 20 МБ
  • Приложение "сбой" при 30 МБ

Я уверен, что видел это в Поваренная книга разработчиков iPhone: создание приложений с iPhone SDK от Эрики Садун (удивительная книга, кстати).

Также: Дубликат → Максимальная память во время работы доступна в iPhone и iPod?.