Ошибка XCode: «GDB: Программа получила сигнал:« SIGABRT ».» - PullRequest
1 голос
/ 22 декабря 2010

Я пишу простое приложение с использованием cocos2d 0.99.5, iPhone SDK - 4.2.Я запустил свое приложение на устройстве, но когда я нажимаю кнопку для переключения CCScenes, иногда приложение неожиданно не получает ответа, и XCode получает ошибку: «GDB: Программа получила сигнал:« SIGABRT ».»

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

Я узнал, что SIGABRT вызывается функцией abort ().abort () вызывается стандартным макросом assert (), когда утверждение не выполняется.Но в моей программе нет функции assert.

Может кто-нибудь сказать мне, как возникает эта проблема и как ее решить?Я не знаю, что делать дальше сейчас.

Ответы [ 2 ]

1 голос
/ 23 декабря 2010

Проблема была решена.Смотрите комментарии выше.

0 голосов
/ 23 ноября 2011

Если вы получаете SIGABRT при запуске приложения, проверьте XIBS

Открыть каждый XIB

Проверьте владельца файлов в каждом из них в Identity Inspector

Убедитесь, что упомянутый класс является правильным и класс существует (я переименовал некоторые файлы, и он не прошел)

Начните с

MainWindow.xib
RootViewController.xib

Проверьте, что имена классов в Identity Inspector в порядке.

Поместите контрольные точки в AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//if it enters this method then MainWindow.xib ok

ШАГ 2 - в didFinishLaunchingWithOptions помещает другую точку останова на

   self.window.rootViewController = self.viewController;

В RootViewController.m (или любом другом подклассе VC self.viewController в AppDelegate) установите точку останова в

viewDidLoad

Если здесь произойдет сбой, проверьте RootViewController.xib (или что бы ни было классом первого VC) и проверьте правильность класса для владельца файла

перебрать все контроллеры View ищите initWithNibName, чтобы найти, как называются XIB. При каждой проверке имя класса в XIb устанавливается правильно.

...