Xcode 4.2 SIGABRT Ошибка - PullRequest
       20

Xcode 4.2 SIGABRT Ошибка

10 голосов
/ 05 января 2012

Каждый раз, когда я запускаю свое приложение на симуляторе iPad, оно работает безупречно. Но, когда я запускаю его на симуляторе iPhone, когда я нажимаю кнопку «Домой», я получаю сообщение об ошибке в Xcode в моем файле main.m, говорящее «Поток 1: Программа получила сигнал: SIGABRT». Эта строка подсвечивается в коде моего main.m: return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

Эта проблема вообще не возникает, когда я вообще нажимаю кнопку «Домой» на симуляторе iPad. Я провел здесь много исследований об этой ошибке, но, похоже, ничего полезного не произошло. Кто-нибудь знает, как это исправить?

Редактировать: вот еще некоторая информация из консоли отладчика

"Не удалось зарегистрировать None.TestApplication на сервере начальной загрузки. Ошибка: неизвестный код ошибки. Как правило, это означает, что другой экземпляр этого процесса уже запущен или завис в отладчике. Sharedlibrary apply-load-rules all Текущий язык: авто; в настоящее время цель-с (ГБД)

Ответы [ 5 ]

15 голосов
/ 06 января 2012

Строка UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); просто означает, что во время работы вашей программы было сгенерировано исключение.Это может варьироваться от проблемы с памятью до простой ошибки во время выполнения.Посмотрите в целевой консоли отладчика;он сообщит вам, где произошла ошибка.

Отредактировано из-за отредактированного вопроса: Я уже решил этот вопрос, восстановив заводские настройки симулятора iOS (откройте «Симулятор iOS»).Меню в левом верхнем углу -> Сбросить содержимое и настройки).Затем выйдите из симулятора iOS и XCode, а затем перезагрузите компьютер.Это избавит от другого экземпляра процесса.

5 голосов
/ 24 февраля 2012

Я только что столкнулся с той же проблемой (на самом деле потратил на это около 2 часов!).Не было никаких исключений.В конце концов я наткнулся на ответ, как этот.Сброс и перезапуск симулятора и XCode не помогли мне, но перезагрузка сделала.

Итак, если вы видите это, и в backtrace НЕ содержится ничего об исключениях, то я думаю, что перезапусквашей машины, скорее всего, это исправить.

3 голосов
/ 13 июня 2013

У меня были очень похожие проблемы, и я обнаружил, что если я переключусь с отладчика LLDB на GDB (из меню Product / Scheme / Edit Scheme), проблема исчезнет. Стоит попробовать.

3 голосов
/ 05 января 2013

Я сделал все выше, включая перезагрузку компьютера, перезагрузку симулятора, но ничего не получилось, поэтому мне пришлось скопировать все файлы в отдельную папку, создать новый проект и перестроить мой файл пера, а затем копировать и вставлять из файлов в моей отдельной папке в мой новый проект. Действительно довольно противный. Если у вас ничего не работает, и ваше приложение не слишком сложное, это может быть альтернативой. Возможно, не самый лучший, но водостойкий.

1 голос
/ 06 мая 2017

В моем случае у меня был некоторый код в viewDidLayoutSubviews, который обновил компоновку и вызвал повторный вызов viewDidLayoutSubviews, входящий в бесконечный цикл.Перемещение этого кода решило эту ошибку.

Я полагаю, что любые бесконечные циклы в главном потоке оказываются неперехваченным исключением.

...