Для всех, кто приходит на это в будущем. Причина, по которой NSLog не печатает в syslog в iOS 10, а iOS 11 - из-за перехода Apple на Unified Logging.
Вы можете увидеть WWDC говорить об этом здесь: https://developer.apple.com/videos/play/wwdc2016/721/
Документация здесь: https://developer.apple.com/documentation/os/logging
С 10 по вам следует использовать os_log вместо NSLog.
Как найти журналы на диске: https://www.blackbagtech.com/blog/2017/09/22/accessing-unified-logs-image/
Суммируя, журналы расположены в /var/db/diagnostics
, которые можно найти в виртуальной машине на /Users/USERNAME/Library/Developer/CoreSimulator/Devices/SIMULATOR-GUID/data/var/db/
Копирование всех элементов внутри diagnostics
и uuidtext
в одну папку (не включайте диагностику папок или uuidtext только то, что внутри).
Переименовать эту папку foldername.xarchive
.
Откройте его в Console.app или использовать OSX Util log
: log show <path to archive> --info --predicate <options>
У меня была аналогичная проблема. Но в iOS 8.1, Xcode 8. Я проверил каждый ответ здесь. Оказывается, я делал все правильно. Ничего действительно не помогло. Итак, я выключил устройство и включил его. Оно работает. Я написал этот комментарий здесь, чтобы он помог другим, столкнувшимся с подобной проблемой. – KrishnaCA