Есть ли способ просмотреть журнал консоли в реальном времени для просмотра NSLog и других сообщений отладки в режиме реального времени, таких как adb logcat?
Есть ли способ просмотреть журнал консоли в реальном времени для просмотра NSLog и других сообщений отладки в режиме реального времени, таких как adb logcat?
Ответы:
Решение, описанное Apple в технических вопросах и ответах QA1747 Отладка развернутых приложений iOS для Xcode 6:
printзаявления не попадают в лог, только к stdout. NSLogВместо этого используйте . Или можно было бы перенаправить stdoutв файл с добавленным кодом. Сбои регистрируются и доступны с помощью кнопки «Просмотр журналов устройства».
РЕДАКТИРОВАТЬ: используйте решение @cbowns - консоль устройства совместима с iOS9 и намного проще в использовании.
Это программа с открытым исходным кодом, которая отображает системный журнал iDevice в Терминале (аналогично tail -F). Никакого взлома не требуется, вывод полностью доступен для поиска, поэтому вы можете фильтровать его, чтобы увидеть вывод только своей программы. Что особенно хорошо в этом решении, так это то, что вы можете просматривать журнал независимо от того, было ли приложение запущено в режиме отладки из XCode.
Вот как:
Загрузите двоичный файл libimobiledevice для Mac OS X из моей учетной записи github по адресу https://github.com/benvium/libimobiledevice-macosx/zipball/master
Следуйте инструкциям по установке здесь: https://github.com/benvium/libimobiledevice-macosx/blob/master/README.md
Подключите свое устройство, откройте Terminal.app и введите:
idevicesyslog
Вверх всплывает отображение системного журнала устройства в реальном времени.
Поскольку это консольное приложение, вы можете фильтровать журнал с помощью команд unix, таких как grep
Например, просмотрите все сообщения журнала из определенного приложения:
idevicesyslog | grep myappname
Взято из моего блога http://pervasivecode.blogspot.co.uk/2012/06/view-log-output-of-any-app-on-iphone-or.html
No device found, is it plugged in?
brew uninstall libimobiledevice ideviceinstaller && brew install --HEAD libimobiledevice ideviceinstaller
Два варианта:
libimobiledevice можно установить через homebrew и отлично работает. Его idevicesyslogинструмент работает аналогично deviceconsole(см. Ниже) и поддерживает просмотр системного журнала вашего устройства по беспроводной сети (!)
Я уже писал об этом на Tumblr tl; dr:
brew install libimobiledevice
idevice_id --list // list available device UDIDs
idevicesyslog -u <device udid>
с устройством, подключенным через USB или доступным в локальной беспроводной сети.
С 2013 года: deviceconsole от rpetrich - гораздо менее сложное решение, чем ideviceconsole выше. Моя его вилка собирается и запускается в Xcode 5 из коробки, а действие Build установит двоичный файл /usr/local/binдля простоты использования.
В качестве дополнительной полезной информации я использую его в следующем стиле, который упрощает поиск нужного мне устройства в истории моей оболочки и удаляет ненужные >строки, которые deviceconsoleвыводятся на печать.
deviceconsole -d -u <device UDID> | uniq -u && echo "<device name>"
libimobiledevice. (Просмотр журналов по проводной и беспроводной сети работает с моим Mac на 10.11 и моим iPhone на iOS 10.2)
brew install --HEAD libimobiledevice. Работал у меня.
Просто откройте приложение Console.appна mac osX.
Вы можете найти его в Applications> Utilities> Console.
В левой части приложения перечислены все ваши подключенные устройства.
Попробуйте бесплатную консоль iOS . Просто скачайте, запустите, подключите свое устройство - и вуаля!
Console.app[который изначально поставляется с macOS]?
Это может быть то, что вы ищете: Xcode Organizer
устройство> вывод терминала находится в приложении конфигурации iPhone
У вас есть три варианта:
Итак, чтобы получить второй вариант, вам просто нужно установить syslogd и OpenSSH из Cydia, после чего потребуется перезапуск для запуска syslogd; теперь просто откройте сеанс ssh на вашем устройстве (через терминал или замазку в Windows) и введите "tail -f / var / log / syslog". И вот, системный журнал в реальном времени.
Если вы хотите попробовать 3º, просто найдите "dup2" в Интернете, это системный вызов.
Чтобы просмотреть консоль вашего устройства iOS в Safari на вашем Mac (только для Mac):
Появится инспектор Safari с консолью для вашего устройства iOS.
В качестве альтернативы вы можете использовать экранный инструмент ведения журнала, такой как тикер-журнал, для просмотра журналов без (удобного) доступа к консоли.
Utilities/Console.app?