Приложение для iPhone Objective C EXC_BREAKPOINT (SIGTRAP)

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

Я попросил крешлог, и они отправили мне его...

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x00000001, 0xe7ffdefe
Crashed Thread:  0

Thread 0 Crashed:
0   dyld                           0x2fe01060 0x2fe00000 + 4192
1   dyld                           0x2fe088d4 0x2fe00000 + 35028
2   dyld                           0x2fe0196c 0x2fe00000 + 6508
3   dyld                           0x2fe01048 0x2fe00000 + 4168

Thread 0 crashed with ARM Thread State:
    r0: 0x2fe23ca0    r1: 0x00000000      r2: 0x2fe23ca0      r3: 0x00000000
    r4: 0x2ffff4e0    r5: 0x2ffff4bc      r6: 0x2fe005c0      r7: 0x2ffffb00
    r8: 0x00000004    r9: 0x2fe57cf0     r10: 0x2fe236c8     r11: 0x00000009
    ip: 0x0000018d    sp: 0x2ffff5b8      lr: 0x2fe088dc      pc: 0x2fe01060
  cpsr: 0x00000010

Binary Images:
0x2fe00000 - 0x2fe22fff  dyld ??? (???) <f6a50d5f57a676b54276d0ecef46d5f0> /usr/lib/dyld

Я, может казаться, не нахожу проблему в рамках своего приложения, какие проблемы вызывают EXC_BREAKPOINT (SIGTRAP)? Я предполагаю, что ошибка в моем AppDelegate, так как это отказывает прямо после экрана запуска.

7
задан avizzini 3 March 2010 в 04:10
поделиться

2 ответа

Попробуйте выполнить эти шаги из технической заметки Apple о чтении файлов сбоев . В нем объясняется, как превратить шестнадцатеричный код в символы (имена классов, имена методов, имена переменных и т. Д.) Из вашего приложения.

Signal.h содержит список ошибок, например SIGTRAP, который определяется как:

#define SIGTRAP 5   /* trace trap (not reset when caught) */
-1
ответ дан 7 December 2019 в 14:31
поделиться

Это довольно странная трассировка стека. Вылетает в dyld (загрузчик динамических библиотек). Это говорит о том, что у него проблемы с загрузкой динамической библиотеки или Framework, что означает, что он загружается системным кодом (поскольку у вас не может быть сторонней динамической библиотеки на стандартном iphone). Обратите внимание, как в разделе двоичных изображений ваш код, кажется, еще даже не загружен (или остальная часть дампа была обрезана)? Вы загружаете динамические библиотеки вручную ( dlopen () и т.п.)? Даже если бы это было так, вы бы ожидали, что main () будет в стеке, если ваша программа действительно загрузилась ....

Когда вы говорите, что они пытались переустановить, я предполагаю, что вы имеете в виду свою приложение? Означает ли это, что они удалили ваше приложение, а затем переустановили его, или что-то еще? Наиболее вероятная причина, которая приходит в голову, - это повреждение комплекта. Но можно подумать, что удаление и переустановка исправят это. Более агрессивным было бы удаление, перезагрузка и повторная установка.

Мой следующий вопрос будет заключаться в том, взломан ли это iPhone. Я бы попросил пользователя перезагрузить iPhone, если он еще этого не сделал. У меня даже было бы искушение попросить их восстановить ОС, но всегда неудобно просить клиента сделать это.

1
ответ дан 7 December 2019 в 14:31
поделиться