Схоже, Android TV TV nVidia Shield поставляється з Android 5.1.1, а оновлення Marshmallow доступне лише з грудня. Я припускаю, що Android 5.1.1 - це версія, встановлена у вашому пристрої.
Послуги системи запитів
Увімкнути adbв бездротовому режимі на пристрої. Дотримуйтесь офіційного керівництва або цієї відповіді Ізі за інструкціями, якщо це потрібно.
Ви можете знайти статус Android - сон або пробуджений - із сміття різних системних сервісів.
Сервіс: живлення
adb shell dumpsys power
Шукайте рядки mWakefulness
та / або Display Power: state
. Обидва вони нададуть вам потрібний вам статус.
Приклад:
adb shell 'dumpsys power | grep -e "mWakefulness=" -e "Display Power"'
дає мені
mWakefulness=Asleep
Display Power: state=OFF
Сервіс: Вікно
adb shell dumpsys window
Шукайте рядки mAwake=true
та / або mScreenOnEarly=true
та / абоmScreenOnFully=true
Приклад:
adb shell 'dumpsys window | grep -e "mAwake=" -e "mScreenOnEarly" -e "mScreenOnFully"'
дає мені
mAwake=true
mScreenOnEarly=true mScreenOnFully=true
Сервіс: Дисплей
adb shell dumpsys display
Шукайте рядки mState=OFF
та / або mScreenState=OFF
.
Приклад:
adb shell 'dumpsys display | grep -e "mState=" -e "mScreenState"'
дає мені
mState=OFF
mScreenState=OFF
Використовуйте Автоматизацію
Якщо жодна із системних служб, згаданих у попередньому методі, не працювала для вас, встановіть автоматизація додаток, такий як Tasker або MacroDroid або Automate.
Зараз ми використовуємо автоматизацію для запису статусу Android у файл, наприклад, «Сон для сну» та «Прокидайтеся», коли він не прокидається.
- Профіль: Подія → Дисплей → Дисплей вимкнено
- Завдання: (Дії): Файл → Написати файл → Виберіть текстовий файл, який потрібно записати, введіть сплячий і зніміть прапорець Додати новий рядок
- Профіль: Подія → Дисплей → Дисплей увімкнено
- Завдання: (Дії): Файл → Написати файл → Виберіть текстовий файл, який потрібно вписати, введіть Пробудити та зніміть прапорець Додати новий рядок
Android , до жаль , не входить echo
або printf
утиліта, якщо пристрій вкорінене , то ви можете встановити BusyBox і бути в світі. Якщо ні, завантажте бінарний файл зайнятої програми , встановіть виконавчі дозволи та натисніть на їх /data/local/tmp
використання adb push
. Інший спосіб для не вкоріненого пристрою - зберігати три файли, один для стану, один з текстом сплячого і останній з текстом Прокидайтеся. Кожен раз, коли екран вимикається / вмикається, скопіюйте другий / третій файл у перший.
MacriDroid також вимагає плагін, наприклад захищені налаштування для виконання команд.
Для не вкорінених Android, його echo
слід замінити на ./data/local/tmp/busybox echo
. В іншому випадку виконайте операцію копіювання за допомогою команди cp SOURCE DESTINATION
.
Ваш потік повинен більш-менш виглядати таким чином
(Клацніть зображення, щоб збільшити)
Вам потрібно створити два потоки, один для сну, а інший для неспання. Другий блок у потоці має назву Broadcast прием і його можна знайти в розділі Apps. Третій блок має назву Текст написання файлу і його можна знайти у розділі Файл та зберігання.
Тепер ви можете перевірити вміст цього файлу за допомогою adb в бездротовому режимі або за допомогою SSH (потрібен SSH-сервер на Android; запускайте сервер на всіх інтерфейсах і не прив'язуйте його до єдиного інтерфейсу.)
Існує ще одна можливість, наприклад, змусити додаток для автоматизації завантажувати файл на локальний або віддалений сервер, щоб ви могли запитувати цей сервер замість Android, щоб дізнатися про стан.