Ответ 1
Ну, это неудобно. Консоль каким-то образом деактивировалась, и я фактически смотрел окно переменных. Нажатие Shift + + C сделало трюк.
Большое спасибо Роберту Кингу в этой теме:
У меня есть проект Xcode, над которым я работал в течение нескольких месяцев. У меня никогда не было проблем с NSLog, но после обновления до Xcode 4.2 ничто не будет входить в консоль. Я даже попытался бросить это в viewDidLoad:
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"Can anyone hear me?");
И ничего. Кто-нибудь еще имеет эту проблему или знает решение?
Ну, это неудобно. Консоль каким-то образом деактивировалась, и я фактически смотрел окно переменных. Нажатие Shift + + C сделало трюк.
Большое спасибо Роберту Кингу в этой теме:
Это ошибка Xcode8 + iOS10, мы можем решить ее следующим образом:
При включении симулятора добавьте имя OS_ACTIVITY_MODE
и значение
Переменные disable
и проверьте его (Product → Scheme → Edit Scheme → Run → Arguments → Environment).
При включении устройства добавьте только OS_ACTIVITY_MODE
и проверьте его (не добавляйте значение). Вы увидите NSLog в консоли Xcode8.
Моя проблема в том, что я выбрал Отладочный вывод. Как только я изменил его на Все выходные или целевой вывод, NSLogs выглядят нормально.
Если это смущает вас в левой части области отладки.
В iOS10 на консоли отображается много системных протоколов. Это можно отключить, включив OS_ACTIVITY_MODE = отключен в параметрах запуска для вашей схемы.
Однако для iOS10 сообщения NSLog больше не будут отображаться. В более низких версиях iOS сообщения будут отображаться. Поэтому, возможно, для большинства тестовых примеров вы можете использовать более низкую версию iOS.
В противном случае вы можете включить функцию Swift, которая печатает (функция печати) вашего текста, это работает в iOS10.
Протестировано на iOS10.0.2 и iOS9.3
Моя проблема заключалась в том, что я случайно отключил реферирующий выход от App Delegate (делегат - владелец файла).
Я просто испытал это, так что еще кое-что проверить.
→ Убедитесь, что в поле "Фильтр" ниже "Выход журнала" ничего не было введено. Итак, в моем случае я искал термин в регистраторе и забыл удалить искомые термины из поля "Фильтр". DOH!
У меня была такая же проблема. Хитрость заключается в поиске и удалении указанной линии из проекта.
#define NSLog(...)
Искать весь проект и удалять его.
Для меня решение заключалось в том, чтобы прокомментировать вызов, который перенаправлял вывод журнала в файл. Вызов:
freopen(...,"a+",stderr);
Все журналы вошли в консоль после того, как это было прокомментировано:)