приложения отлично работают в iOS 4.3, но вылетают в iOS 5 - PullRequest
0 голосов
/ 18 октября 2011

Мои приложения начинают зависать после обновления до iOS 5 с Xcode 4.2.В противном случае проверяется тот же источник, работающий в iOS 4.3.Я совершенно не понимаю, что могло произойти, поскольку обратный след не раскрыл много информации.Вот что я могу сказать о поведении сбоя: -

  1. В результате обратной трассировки была обнаружена последняя попытка освободить ресурс памяти из автоматического пула, который вызывает сигнал EXC_BAD_ACCESS.

  2. Проблема исчезла после настройки env.переменная NSZombieEnabled.Все это очень печально, я надеялся, что NSZombieEnabled сможет раскрыть попытку освободить освобожденный экземпляр.

При миграции источника на iOS 5, нужно ли предпринять дополнительные меры предосторожности, чтобымодификация моего источника Obj-C под iOS 5?На данный момент я не сделал никаких улучшений в исходном коде, чтобы использовать дополнительные функции в iOS 5.

Я читал кое-что об ARC, как вы думаете, может ли ARC вызывать новые сбои, которых никогда не было в предыдущих версиях iOS?

Любые советы и рекомендации по переносу существующего исходного кода на iOS5 приветствуются.

1 Ответ

0 голосов
/ 27 октября 2011

Как оказалось, UITableViewCell*, возвращаемый tableView:cellForRowAtIndexPath: необходимо сохранить вручную (нет, я включил ARC).

Я загружаю пользовательские файлы пера вручную и строго следую образцу кода Apple на этой ссылке

Я до сих пор не понимаю, почему мне нужно его сохранить.В моих приложениях есть несколько других таблиц, которые не сохраняют возвращенную ячейку и в то же время работают в iOS5.

...