Ошибка приложения при загрузке с ошибкой в ​​main.m

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

int main(int argc, char *argv[])
{
    @autoreleasepool {
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
    }
}

Ошибка возникает в "return UIApplicationMain (argc, argv, nil, NSStringFromClass ([AppDelegate class])); раздел файла с ошибкой SIGABRT. Я использую Xcode 4.2 с ARC. Я тестирую его на ios 4.3 и ios 5.0. Приложение работало до и на самом деле, сейчас находится в магазине приложений. Все, что угодно поможет

Ответ 1

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

Ответ 2

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

Ответ 3

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

enter image description here

Ответ 4

случилось со мной, посмотрел в отладчике и обнаружил, что он упоминал имя, которое я дал для действия, но удалил его после того, как создал его как viewController.h и .m, так что по какой-то причине старое действие создано с другим именем, все еще где-то задержался... поэтому я скопировал свой код и вставил его на новую прогу. Конечно, это было очень маленькое приложение для просмотра, так что было легко...

Ответ 5

Я видел, как это произошло раньше, если нет следующих настроек сборки. OTHER_LDFLAGS = -ObjC -all_load

Это связано с привязкой к цели.

Ответ 6

Не уверен, что сообщение об ошибке - это было бы полезно. Но вы импортируете AppDelegate.h?

Ответ 7

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

Ответ 8

Сбой с отладчиком LLDP Я перешел на GDB, а затем он сработал.

Я тоже застрял в этой проблеме, но не все время запуска только 1/2. Абсолютно никакой ошибки в консоли нет ничего, просто сигнал SIGARBT. Мой AppDelegate даже не пошел в didFinishLaunchingWithOptions. Изменение отладчика обратно в GDB (Edit Scheme... > (вкладка Info) Debugger > LLDB) решило проблему.

Ответ 9

Чтобы исправить это, нажмите на mainstoryboard, то есть Interface Builder, выберите вкладку "Инспектор файлов" и снимите флажок "Использовать автозапуск". Кроме того, вы можете настроить таргетинг на iOS 6.0 + только на устройства и изменить минимальную цель, если вы абсолютно должны иметь автозапуск. Эта проблема возникает из-за несоответствия в версиях xcode и источника учебных программ.