Память Предупреждение, когда я просто открываю приложение, ТОЛЬКО на 4.2 или позже - PullRequest
1 голос
/ 20 января 2011

Друзья,

Я тестировал свое приложение на iPad3.2.Он работал хорошо. Затем я протестировал тот же двоичный файл в iPad 4.2.1, он показывает предупреждение о уровне памяти уровня 1 через несколько секунд после открытия приложения (до того, как я сделаю свое первое прикосновение к экрану после запуска).

Я только что добавил контроллер splitview, который имеет один tableView в качестве MasterView (всего 10 строк, без изображений) и один UIWebview (просто пустой веб-просмотр, просто инициализирован, НЕТ загруженных URL-адресов). Ни изображения, ни графическое содержимое не загружались при запуске.

Я думаю, RAM была занята приложениями, работающими в фоновом режиме (да, у меня было 20 приложений в фоновом режиме).Я не получаю предупреждений памяти при запуске, если я закрываю все приложения вручную.

Но, Тем не менее ..... Я не могу попросить пользователя выйти из других приложений перед запуском моего приложения.

1Может кто-нибудь предложить мне какой-нибудь обходной путь ??

2. Есть ли возможность освободить занятую оперативную память (другими приложениями)?

3.Если я продолжаю посещать веб-страницы (с большими изображениями) в моем приложении, я получаю предупреждения о памяти, и он вылетает. Но если я повторяю тот же набор страниц в браузере Safari (или в некоторыхдругие приложения тоже), он не падает !!Как я могу эффективно сделать?Я не нахожу таких опций в UIWebView Class !!

Любые ответы / советы будут более ценными ...

Заранее спасибо.Гопи

1 Ответ

4 голосов
/ 21 января 2011

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

...