Выбор ответа Middle Производительность и тестирование обновлено
Метрики производительности у реальных пользователей
Вопрос
Как собрать данные о времени запуска, зависаниях и завершениях по памяти у реальных пользователей без сторонних SDK?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: MetricKit: система присылает агрегированные метрики в подписчик. MetricKit (iOS 13+) доставляет приложению агрегированные метрики: время запуска, hang rate, память, батарея, а с iOS 14 ещё и диагностику крэшей и зависаний со стеками.
Варианты ответа
- Instruments, подключённый к телефонам пользователей через TestFlight
- Включить
OS_ACTIVITY_MODEв релизной сборке и собирать логи - Только из отзывов и оценок в App Store, других источников нет
- MetricKit: система присылает агрегированные метрики в подписчикправильный ответ
Разбор
MetricKit (iOS 13+) доставляет приложению агрегированные метрики: время запуска, hang rate, память, батарея, а с iOS 14 ещё и диагностику крэшей и зависаний со стеками. Похожие данные видны в Xcode Organizer. Instruments работает только с подключёнными устройствами разработчика. OS_ACTIVITY_MODE это переменная для логов при отладке.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Ещё по теме «Производительность и тестирование»
- Тест в Swift Testing
- Hang и hitch: разница
- Пирамида тестов в iOS
- Тестирование сетевого слоя через URLProtocol
- Бюджет кадра на iPhone с ProMotion
- Сколько памяти занимает декодированная картинка
- Приложение пропадает без крэш-лога
- Задача на Swift: статистика рывков по длительностям кадров