Экран ничего не хранит. Он читает систему напрямую и показывает то, что видит прямо сейчас. Истории нет: закрыли экран — данных не осталось.
Возможности
- Карточка устройства вверху: производитель, модель, внутреннее имя и железная начинка.
- Четыре крупные метрики сразу под ней: CPU, RAM, Storage и Battery — каждая числом и цветной шкалой.
- Раздел
// performance: карточка CPU и карточка Disk I/O. - Поядерная загрузка. Если система отдаёт данные по каждому ядру, они показываются отдельной строкой на ядро: номер, процент и текущая частота.
- Общая загрузка процессора одной строкой — если поядерных данных нет.
- Температура процессора — если система её отдаёт.
- Карточка Disk I/O — текущая скорость чтения и записи.
- Раздел
// memory & storage: карточка RAM и карточка Storage. - Память системы полосой: занято из всего и процент. Плюс сколько свободно.
- Память приложения одной строкой в килобайтах — честная доля, а не всё подряд.
- Встроенное хранилище полосой: занято из всего и сколько свободно.
- Раздел
// power— карточка батареи: заряд, состояние, питание, здоровье, технология, температура и напряжение. - Раздел
// connectivity— карточка сети: тип подключения, имя сети, локальный адрес, шлюз, адреса DNS, текущие скорости вниз и вверх и общий трафик с момента включения. - Раздел
// runtime— состояние опроса, сколько работает система, сколько работает приложение, установленная версия и время последнего замера. - Кнопка паузы в шапке — останавливает и возобновляет живые показания.
- Кнопка копирования отчёта — кладёт в буфер весь слепок телеметрии текстом.
- Автообновление раз в секунду, пока опрос не на паузе.
- Заглушка при первом чтении с подсказкой, откуда берутся данные.
Технические данные
| Параметр | Значение |
|---|---|
| Период обновления | 1 секунда |
| Разделов на экране | 5, перечислены ниже |
| Крупных метрик вверху | 4: CPU, RAM, Storage, Battery |
| Строк в отчёте | около 25, плюс строка на каждое ядро |
| Границы цвета заполнения | свыше 70% — жёлтый, свыше 90% — красный |
| Границы цвета батареи | до 30% — жёлтый, до 15% — красный |
| Единицы памяти | КБ, МБ, ГБ, три знака после точки для гигабайтов |
| Единицы скорости | всегда КБ в секунду, одна цифра после точки |
| Время работы | дни, часы, минуты и секунды, без месяцев |
| Состояний батареи | 5, перечислены ниже |
| Состояний питания | 4: AC, USB, Wireless, Unplugged |
| Состояний здоровья батареи | 6, перечислены ниже |
| Типов сети | 6: WiFi, Mobile, Ethernet, Other, No network, Unknown |
| На этом устройстве сейчас | 8 ядер, Android 16, хранилище 479 ГБ, память 11 гб |
| Температура процессора | 46 °C, система её отдаёт |
| Загрузка CPU и скорость диска | система их закрывает, тут всегда нули |
Как читать крупные метрики
Четыре плитки вверху — это быстрый ответ на «в порядке ли телефон». У каждой большое число, под ним мелкая подпись и цветная полоса заполнения:
- CPU — загрузка в процентах, а под ней либо температура и число ядер, либо просто число ядер, если температуры нет.
- RAM — занято из всего, например
7.3 / 11.0 GB. - Storage — сколько свободно на встроенном хранилище.
- Battery — заряд в процентах, а под ним чем питается: от розетки, по USB-кабелю, по беспроводной зарядке или ничего.
Полоса меняет цвет по наполнению: до 70% — бирюза, от 70% — жёлтый, от 90% — красный. У батареи шкала своя и обратная: чем больше заряд, тем спокойнее цвет; до 30% жёлтый, до 15% красный.
Про скорости и почему сначала нули
Скорость сети, чтения и записи — это не «что система сообщила», а разница между двумя замерами: прошлым и текущим. Сами по себе эти числа никто не хранит.
Поэтому первые показания почти всегда нулевые: не хватает предыдущего замера, с чем сравнить. На паузе отсчёт не идёт, а при возврате с паузы первые секунды снова показывают нули, пока не наберётся новая пара замеров.
Ноль в первый момент — это не «интернет не работает». Это «не с чем сравнить».
Почему загрузка процессора может быть нулём постоянно
Счётчик загрузки процессора живёт в системном файле, который современные версии Android закрывают для обычных приложений. Если файл не читается, экран честно показывает 0.0% и не рисует поядерную сетку — вместо неё появляется одна строка общей загрузки.
Проверено на этом устройстве прямо из процесса приложения: файл со счётчиком закрыт, поэтому загрузка процессора здесь всегда нулевая, а поядерных строк нет. Это не замер «в ноль», а отсутствие доступа к данным. Частоты и температура при этом читаются — они лежат в других файлах, которые открыты.
По той же причине может не работать скорость диска: её источник закрыт тоже, и она будет показывать ноль.
Память, хранилище, батарея, сеть и время работы снимаются через штатные средства телефона, поэтому доступны всегда. А частота и температура — отдельная история: их файлы закрывают реже, и тогда строк с ними просто не будет.
Про ядра, частоты и температуру
Частота показывается только если система её отдаёт. Нулевые значения отбрасываются: ядро без частоты просто покажет процент без мегагерц, а не ноль мегагерц — чтобы не путать с «ядро встало».
Температура берётся из двух заранее заданных зон датчиков, из которых берётся первая непустая. Если обе закрыты или отдают ноль, строка температуры просто не появляется.
Как читать батарею
В карточке батареи семь строк:
- Level — заряд в процентах.
- Status — что батарея делает: заряжается, разряжается, полная, не заряжается или неизвестно. Всего пять состояний.
- Power — откуда питание: розетка, USB, беспроводная зарядка или ничего.
- Health — состояние батареи: хорошая, перегрев, мёртвая, перенапряжение, холодная или неизвестно. Всего шесть состояний.
- Technology — тип батареи, какой её сообщает система.
- Temperature — температура.
- Voltage — напряжение.
Всё это приходит одним системным сообщением, поэтому заряд виден всегда, даже когда телефон лежит с выключенным экраном.
Про имя сети и про суммы трафика
Имя сети на современных версиях Android обычно недоступно: система требует для этого доступ к местоположению, а приложение его не запрашивает. Вместо имени может показываться служебная заглушка. Это нормально, не поломка.
Адрес, шлюз и DNS берутся из данных подключения, поэтому они настоящие.
Суммы трафика считаются с момента включения телефона — это счётчик системы, а не приложения. Текущие скорости, наоборот, живут секунду и показывают, что происходит прямо сейчас.
Про время работы
Два разных времени:
- Время работы системы — с момента последней загрузки телефона. Оно большое и честное.
- Время работы приложения — с момента, когда экран был создан заново. Это не время жизни процесса: ушли с экрана и вернулись — счётчик начинается с нуля.
Поэтому сравнивать их между собой бессмысленно.
Про копирование отчёта
Кнопка в шапке собирает текстовый слепок: время обновления, модель, внутреннее имя устройства, версия Android, разрядность, железо, загрузка процессора и отдельная строка на каждое ядро с частотой, температура, память, память приложения, хранилище, батарея целиком, сеть, адреса, скорости и суммы трафика, скорость диска, время работы системы и приложения и версия установленного приложения.
Дальше отчёт скармливается агент командой — по нему сразу видно, что с устройством, без лишних вопросов.
Что агент умеет
Агент может открыть этот экран через мост командой открытия экрана system и прочитать его содержимое командой чтения интерфейса, если приложение сейчас на экране.
Отдельного инструмента для телеметрии телефона у агента нет, и это не проблема: половину цифр он снимает сам из системы — ядра, память, хранилище, температуру, адреса сети. Батарею он так не увидит, зато состояние телефона целиком есть в его собственном инструменте диагностики.
Если нужно разобраться, тормозит ли телефон, агент собирает такой же отчёт сам — из своих замеров и из того, что показывает экран.
Ограничения
- Истории нет: экран держит только текущий снимок. Графиков за последние часы не будет — их надо вести отдельно.
- Замеры идут раз в секунду и останавливаются только кнопкой паузы. Сворачивание приложения чтение не останавливает — оно идёт, пока живёт процесс.
- Время работы приложения считается от открытия экрана, а не от запуска.
- Версия приложения показывается та, что реально стоит на телефоне. Она может отличаться от той, что в исходниках.
- Загрузка процессора, поядерная сетка и скорость диска зависят от того, откроет ли система нужные файлы. На многих современных телефонах они закрыты.
- Частота и температура процессора тоже могут быть недоступны.
- Имя сети обычно недоступно: система не отдаёт его без специального разрешения.
- Отчёт копируется, а не отправляется: куда его передать, решаете вы.
- Все строки на экране английские.