Xcode 7: исключительная точка останова срабатывает в `main.m`, но приложение работает нормально

Я установил точку останова исключения "Все исключения" для своего проекта. В Xcode 7 он загадочным образом запускается при запуске в main.m, но, похоже, что-то явно не так. При продолжении приложение работает нормально.

Даже запуск проекта в Xcode 6 теперь вызывает срабатывание этой точки останова.

снимок экрана с точкой останова

Я не могу понять, что является причиной этого. Потоки не указывают ничего конкретного о причине.

Может быть, это какая-то проблема со шрифтом в раскадровке или что-то в этом роде? Кто-нибудь знает исправление?

ПРИМЕЧАНИЕ. Это исключение C ++, а не Objective-C. Возможно из-за отсутствующих шрифтов. Xcode вызывает исключение в Main () в iOS 8 с точкой останова «все исключения»

12 голосов | спросил Ben Guild 14 J0000006Europe/Moscow 2015, 11:26:21

2 ответа


0

У меня есть почти идентичная проблема в Xcode 7, начиная с бета-версии 3. Этот обходной путь решил ее для меня.

Поскольку это исключение C ++, вы можете изменить точку останова «Все исключения», чтобы перехватывать только исключения Objective-C. Сделав это, я больше не сталкиваюсь с загадочным перерывом при запуске, и, поскольку я не пишу на C ++, я получаю 99% от значения точки останова «Все исключения».

Вот как:

  1. Перейдите на вкладку точек останова (Просмотреть> Навигаторы> Показать навигатор точек останова или ⌘7).
  2. Щелкните правой кнопкой мыши точку останова All Exceptions и "Изменить точку останова ..."

редактировать точку останова

  1. Измените исключения, охватываемые только на Objective-C.

введите описание изображения здесь

ответил Clay Bridges 9 J000000Thursday15 2015, 22:40:30
0

Я начал видеть такое же поведение в своем приложении, используя сокращенную инициализацию словаря @{ ...: ... } в willFinishLaunchingWithOptions функция.

Проблема была решена, заменив ее на dictionaryWithObjectsAndKeys. Я не уверен, было ли это конкретно для моего случая, или если у компилятора есть какая-то проблема с сокращенным синтаксисом, но стоит проверить, используете ли вы этот синтаксис.

ответил Simon Robb 19 Jam1000000amThu, 19 Jan 2017 04:56:15 +030017 2017, 04:56:15

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132