Случайный сбой Iphone - PullRequest
       19

Случайный сбой Iphone

0 голосов
/ 14 марта 2012

В последнее время мой проект iphone завершается, но во время работы приложения происходит случайный сбой, и стек вызовов всегда находится в библиотеке COCOA, сложная проблема, не знаю, как с этим справиться, в некоторых случаях я даже подозреваешь что это яблочный дефект?

Мои вопросы.

  1. Как вы, ребята, справляетесь с этими случайными сбоями с низкой скоростью воспроизведения? Любой метод, чтобы помочь увеличить воспроизводимый уровень?

  2. Как исправить эти сбои, расположенные в библиотеке COCOA? Как найти больше улик?

Любая идея или обсуждение будут оценены, спасибо заранее.

Ответы [ 3 ]

0 голосов
/ 14 марта 2012

Включить флаг NSZombie. проект (в верхнем левом углу xcode)> Диагностика> включить объекты зомби

Это будет знать, где происходит сбой кода .. найти его исправить

0 голосов
/ 14 марта 2012

Если приложение вызывает сбой в коде COCOA, это не означает, что код COCOA неверен - гораздо более вероятно, что вы передали ему недопустимые данные (например, ноль, где его не должно быть).Если это происходит случайным образом, возможно, имеется какой-то многопоточный параллелизм, или некоторые из ваших объектов становятся (автоматически) выпущенными слишком рано, и т. Д. Вы должны тщательно проанализировать свой код, который работает с классами COCOA, где происходит ваш сбой, или попробовать отладку управления памятью, какпредложенный другими ответчиками.

0 голосов
/ 14 марта 2012

Как правило, я не начинаю думать, что это проблема какао. Это случается, но в большинстве случаев наша вина.

Когда происходит сбой такого рода, первое, что нужно сделать, это запустить статический анализатор, иногда это просто проблема сохранения / выпуска. Если вы используете ARC, пропустите эту часть и начните создавать точку останова исключения (поиск ' Чтобы добавить точку останова исключения ... ' в связанном руководстве). Точка останова исключения помогает вести более подробный журнал аварийных ситуаций при возникновении исключения.

Третий шаг - использование инструментов, поиск памяти, утечек и любой другой формы утечки памяти. Как использовать инструменты, подробно объясняется в паре видеороликов WWDC.

...