Google Pixel 2 Always On Ambient Display можна ввімкнути прямо зараз на вашому Android Oreo ROM

Google Pixel 2/2 XL запускатиметься з режимом «завжди ввімкнено» для зовнішнього дисплея. Ми дізналися, як увімкнути його прямо зараз на будь-якій ПЗУ Android Oreo!

Останнє оновлення Android від Google, чудовий Android Oreo, може багато чого запропонувати користувачам. Від інтеграції менеджерів паролів до нового API автозаповнення до більш низьких змін, таких як Проект Treble, це наступне оновлення, зрозуміло, схвилювало багатьох користувачів на наших форумах. Але інколи Google хоче приховати певні функції від початкового оновлення, чи то через те, що функція не завершена, чи призначена для запуску з пристрої наступного покоління. Однією з таких особливостей є Режим Always On Ambient Display який ми вперше виявили у вимкненому стані на першому поколінні Google Pixel, і, ймовірно запуск з Google Pixel 2 і Pixel 2 XL.

Оскільки ми спочатку висвітлювали існування цієї функції, деякі користувачі припускають, що режим постійного відображення може поставлятися лише з пристроями Google другого покоління

наступного місяця (проте не з Qualcomm Snapdragon 836 як повідомлялося спочатку). Цілком можливо, що це так, оскільки ми не знаємо точних деталей про плани Google щодо цієї функції. Однак, на відміну від за чутками, стискається рамка, завжди ввімкнений дисплей виглядає вже повністю функціональним - якщо ви знаєте, як його ввімкнути AOSP.

Ви можете списати неякісні фотографії на мою некомпетентність у фотографії.

Нове налаштування відображення навколишнього середовища працює так само, як і всі інші режими «завжди на дисплеї» від Samsung або LG. Коли ви вимкнете екран, ви побачите годинник, який залишиться на екрані пристрою. Коли ви отримаєте сповіщення, ви побачите повний вміст сповіщення протягом кількох секунд, перш ніж воно зникне, показуючи лише значок програми під годинником.

Тестовим пристроєм, який я демонструю в цьому режимі зовнішнього відображення, є Google Nexus 6, який працює на неофіційному порту Android 8.0 Oreo. Це один із багато неофіційних портів Android Oreo вже доступний завдяки чудовій роботі розробників на наших форумах. У ПЗП, яке я тестував, опцію постійного відображення навколишнього середовища вже було ввімкнено в System UI Tuner.

Після кількох невдалих спроб повернути панель навігації і налаштування ярликів на екрані блокування до System UI Tuner за допомогою безкореневе накладення субстрату (на жаль, неможливо без root, оскільки це вимагає властивості системи ro.debuggable встановити на 1), я копав вихідний код і також знайшов метод який визначає, чи завжди відображається навколишній екран буде показано в System UI Tuner.

Виявляється, що є метод в AmbientDisplayConfiguration називається "alwaysOnAvailable", яка наразі жорстко закодована, щоб завжди повертати "false". Там є коментар, у якому вказано, чому це робиться, оскільки "ще не працює належним чином". Можливо, ні, але без подальших уточнень щодо того, чому це не працює, я не схильний розуміти, чому ми не повинні дозволяти користувачам грати з ним, якщо вони цього хочуть.

Отже, щоб фактично працювати завжди на зовнішньому дисплеї, все, що вам потрібно зробити, це змінити цей метод, щоб замість нього завжди поверталося значення "true". Це саме те, що SiXROM робить, який запозичив комміт від XDA Senior Member WelcomeToTheSkye з Vanilla, ПЗУ для Nexus 6P.

Не впевнений, чи слово «Goofle» — це просто орфографічна помилка чи це було навмисно.

Я насправді не використовую Nexus 6 як щоденний драйвер, а лише як тестовий пристрій, який я швидко повернув до життя виконувати підручники з Substratum. Таким чином, я не можу сказати вам, наскільки добре це працює на практиці прямо зараз, оскільки я не використовував його більше ніж кілька днів. Але якщо ви використовуєте неофіційний порт Android Oreo (і, імовірно, маєте OLED-дисплей), то вам може бути цікаво спробувати це.

Звичайно, більшість із нас не є розробниками власних ПЗУ, тому зробити цю зміну трохи недосяжним. Усі розробники ПЗУ, які читають це, хочуть включити цю функцію, сподіваюся, ви можете зробити це досить легко зараз. Можливо, це навіть варто того увімкнути захист від вигоряння зовнішнього дисплея у Android Framework, поки ви там.