> Как смотреть логи мобильного приложения и какими способами? (iOS, Swift, Android)
Уровень: middle · Роль: qa · Категория: Технические вопросы
Компании: Т-Банк, Ozon
Стек: iOS, Swift, Android
> Пример ответа
Для просмотра логов мобильного приложения на iOS и Android используются разные инструменты, но подходы схожи.
На iOS (Swift):
-
Xcode Console: при запуске приложения через Xcode логи выводятся в консоль. Используйте
print()илиos_logдля структурированного вывода. -
OSLog Framework: более гибкий инструмент, позволяющий фильтровать логи по категориям и уровням (default, info, debug, error). Просмотр через Console.app на Mac или команду
log streamв терминале. -
Device Logs: для физического устройства - через Xcode (Window → Devices and Simulators) или сторонние утилиты (например, iMazing).
На Android:
-
Logcat: основной инструмент. Доступен в Android Studio (Logcat window) или через командную строку (
adb logcat). Фильтруйте по тегу (-s MyTag), уровню (-v brief) или PID. -
ADB (Android Debug Bridge):
adb logcat -v time > log.txtдля записи в файл. Полезно для удаленного сбора логов. -
Сторонние библиотеки: Timber (упрощает логирование) или Firebase Crashlytics (для сбора ошибок в продакшене).
Общие способы:
-
Фильтрация: по уровню (ERROR, WARN, DEBUG) и тегу, чтобы не захламлять вывод.
-
Сбор с устройства: для iOS - через Xcode/Console, для Android - через ADB или USB-отладку.
-
Продакшен-логи: используйте Crashlytics, Sentry или собственный сервер (например, отправка логов через HTTP).
Пример для Android через ADB:
BASHadb logcat -s MyAppTag:* -v time > app_logs.txt
Пример для iOS через os_log в коде:
SWIFTimport os.loglet log = OSLog(subsystem: "com.yourapp", category: "network")os_log(.error, log: log, "Ошибка загрузки: %@", error.localizedDescription)
Совет: всегда используйте уровни логирования (debug для разработки, error для критических ошибок) и избегайте вывода чувствительных данных в продакшене.
> Похожие задачи по qa
Был ли у вас опыт работы с JSON?
Как работать с JSON в автотестах
Что проверяют юнит тесты
В чем разница тестирования iOS и Android?
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью