2012-01-19 3 views
0

Есть ли приемник вещания, который я могу использовать, чтобы определить, что мое устройство только что проснулось. Моя цель - определить, когда появляются пробуждения. Я планирую график результатов в excel.Широковещательный приемник от глубокого сна до пробуждения. (Так же, как, эй, устройство просто разбудило эфир!)

Это время, которое НЕ вычисляется SystemClock.uptimeMillis().

Примечание: Я знаком с AlarmManager.

ответ

1

Есть ACTION_SCREEN_ON и ACTION_SCREEN_OFF, но вы не можете указать их в манифесте, и регистрации широковещательные приемники из широковещательного приемника (скажем, для ON_BOOT_COMPLETE) невозможно. Вы можете попытаться зарегистрировать тревогу без пробуждения, которая не срабатывает, когда устройство будет спать, но прошлая тревога будет запущена при пробуждении устройства. Я боюсь, что это как можно ближе к вам.

+0

Да Я понимаю вашу точку в тревоге и действиях экрана без следа. Тем не менее, я определяю пробуждение между глубокими сна. Который мне не нужно включать экран. Лучший пример того, что я пытаюсь выполнить, - это состояние ожидания в режиме ожидания. Я уже понял, насколько сильно работает устройство, просто с помощью totalUptime/elaptime. Но теперь я беспокоюсь о разных моментах, когда происходит пробуждение, поэтому я могу его нарисовать. – quiel

+1

С предупреждением без пробуждения вы получите момент пробуждения с хорошей точностью. Однако глубокий сон будет мрачным. Кстати, это должно быть где-то в системных журналах? –

+0

Да, вы правы, это в журнале ядра. И ff - это разные точки/ключевые строки просыпаться «Ввод приостановить состояние LP0», «Возобновить вызвано». Однако этот метод имеет 2 проблемы: сначала я должен получить все строки в журнале ядра (который трудно собрать из-за ограниченного размера буфера). Во-вторых, другое устройство Android с разной модификацией в ядре не использует указанные ключевые строки. – quiel

0

вы можете использовать ACTION_SCREEN_ON и ACTION_SCREEN_OFF, но нет конкретного будильника.

, если вы сделаете это, я бы сказал, вы можете запустить таймер, когда экран выключен обжигают и остановить его, когда экран на него произвели

Смежные вопросы