Activați Google Pixel 2 Always on Display pe Nexus 6P, Pixel și Pixel XL fără root

Am descoperit cum să activăm noua funcție Always on Display a lui Google Pixel 2 pe Nexus 6P, Google Pixel și Pixel XL fără a avea nevoie de root!

The Google Pixel 2 și Pixel 2 XL sunt cele mai noi smartphone-uri din seria de smartphone-uri Pixel de la Google și, în timp ce hardware-ul este în mare parte un îmbunătățire progresivă față de telefoanele Pixel din generația anterioară, software-ul are câteva cu adevărat ingenioase functii noi. Există noua tehnologie de cameră folosită în telefon Caracteristica Mod Portret, funcția de recunoaștere a muzicii care ascultă mereu Acum se joacă, și o funcție Always on Display. Din păcate, niciuna dintre aceste caracteristici nu își va face drum către smartphone-urile anterioare ale Google, cel puțin oficial. Am arătat anterior că este posibil să activăm Always on Display al Pixel 2 prin ROM personalizat, dar recent am descoperit că este posibil activați Always on Display pe Nexus 6P, Pixel și Pixel XL fără root.

Credite foto: XDA Junior Member InFlames03


Always on Display poate fi acum activat datorită Android 8.1 și Substratum

Anterior, am raportat că ar fi imposibil să activați funcția Always on Display pe orice telefon Google mai vechi. Asta pentru că Google a codificat funcția care permite Always on Display să returneze întotdeauna false. Acesta a fost cazul în retragerea codului sursă pentru Android 8.0 Oreo, dar nu mai este adevărat odată cu lansarea Previzualizare pentru dezvoltatori Android 8.1 Oreo 1.

După cum se arată în capturile de ecran de mai sus, funcția responsabilă pentru a determina dacă să activeze sau nu Always on Display a returnat anterior doar „false”. În cel mai recent AmbientDisplayConfiguration cu toate acestea, acum verifică o valoare de configurare booleană numită "config_dozeAlwaysOnDisplayAvailable„care este stabilit de Google ca fiind adevărat pe Pixel 2 și Pixel 2 XL, dar fals pe orice alt telefon pe care îl produc.

Pentru a fi mai precis, Google folosește o suprapunere de cadru instalată în /vendor/overlay numit framework-res_auto_generated_rro pentru a specifica valoarea acestei configurații. Deoarece această suprapunere de cadru se bazează pe OverlayManagerService (OMS), putem crea propria noastră suprapunere de cadru forțați config_dozeAlwaysOnDisplayAvailable să returneze „true” pe Nexus 6P, Pixel și Pixel XL.

Acest lucru este posibil deoarece OMS, cadrul tematic construit de Sony, este integrat nativ începând cu Android Oreo. Datorită acestui fapt, putem folosi comenzile încorporate pentru a gestiona și instala propriile teme—totul fără a necesita root. Făcând acest lucru, dezvoltatorii au descoperit cum să devină popular Manager de teme de substrat lucrează pe dispozitive Android Oreo. Astfel, pentru ca Always on Display să funcționeze, vom folosi managerul de teme Substratum cu pluginul său Andromeda pentru a instala suprapunerea noastră specială pe Nexus 6P, Pixel și Pixel XL.

În cele din urmă, mai există un punct de confuzie pe care vreau să-l abordez - și anume, faptul că folosim ceea ce se numește popular „motor de temă” pentru a activa o funcție ascunsă. Deși Substratum este folosit în mod obișnuit pentru a instala teme, este mai corect să numiți aceste teme „resurse suprapuneri.” Asta pentru că aceste „teme” specifică valori care înlocuiesc resursele originale ale țintei lor aplicația. De obicei, suprapunerile de resurse înlocuiesc doar valorile de culoare din aplicația originală, dar pot viza și numerele întregi, șiruri sau valori booleene din resursele aplicației. Unele suprapuneri de substrat existente folosesc acest lucru pentru personalizați ecranul de blocare, ecranul de aplicații recente și setările rapide de exemplu.

În orice caz, sperăm că aveți o mai bună înțelegere a ceea ce suntem pe cale să facem. Urmați tutorialul de mai jos pentru a activa Always on Display de pe Pixel 2 pe telefoanele Google Pixel de prima generație, precum și pe Nexus 6P.


Cum să activați funcția Always on Display a Google Pixel 2 pe Nexus 6P, Pixel și Pixel XL

Cerințe:

  • Nexus 6P, Google Pixel sau Google Pixel XL. Nexus 5X va funcționa, dar nu este recomandat din cauza lipsei unui ecran OLED.
  • Previzualizare pentru dezvoltatori Android 8.1 Oreo 1. Puteți găsi fișierele firmware Aici.
  • Licență pentru Plugin-ul Andromeda al substratului ($1.99). Fără aceasta, nu veți putea instala suprapunerea cadru pe care am făcut-o. Cel puțin, nu ușor.

Tutorial

Mulțumiri speciale membrilor XDA Junior InFlames03 pentru a ajuta la descoperirea acestei caracteristici, pentru a o testa și pentru a oferi în sfârșit o suprapunere de cadru pentru descărcare. Vezi noul lui Oreo și Proaspăt teme.

  1. Configurați Substratum și pluginul său Andromeda. Puteți urmări acest tutorial tot drumul până când termini partea 1.
  2. Instalați APK-ul alwaysOn-enabler de la AndroidFileHost sau Aplicația Pixel Enabler din Magazinul Google Play. Prima este doar o suprapunere de bază care activează această caracteristică, în timp ce cea din urmă va include mai multe funcții în viitor.
  3. Deschideți substrat și căutați „Activator mereu activat" de Sai în lista de teme. Atingeți-l.
  4. Apăsați pe "selectați pentru a comuta toate suprapunerile."
  5. Atingeți pe buton plutitor al rolei de vopsea.
  6. Selectați "Creați și activați."
  7. Reporniți.
  8. Deschide Setări --> Afișare. Extindeți „Avansat„categorie și apăsați pe”Afișaj ambiental."
  9. Ar trebui să vezi un "Mereu pe" comutare. Dezactivează-l și reactivează-l. Bucură-te de Always on Display!

Alternativ, puteți viziona următorul videoclip care parcurge pașii de bază necesari pentru a activa Always on Display. Videoclipul a fost capturat de un membru senior XDA eqbirvin pe Google Pixel XL lui care rulează Android 8.1 Oreo. Rețineți că vă recomandăm totuși să reporniți, chiar dacă videoclipul nu arată nicio repornire.

Avertismente

Nexus 6P, Pixel și Pixel XL nu oferă o funcție de afișare permanentă în mod prestabilit, deoarece ecranele lor nu sunt reglate corespunzător pentru a intra în starea de somn cu putere redusă în care sunt ecranele Pixel 2. Astfel, utilizarea acestei suprapuneri pentru a activa Always on Display poate fi considerată un hack, deoarece nu este lipsită de avertismente. Nu l-am folosit pentru o perioadă lungă de timp pentru a măsura consumul de energie sau alte probleme potențiale, dar până acum iată problemele pe care le-am întâlnit:

  • Apăsarea butonului de pornire pentru a trezi direct în ecranul de blocare din Always on Display nu funcționează. Trebuie să apăsați butonul de pornire de două ori.
  • Atingerea de două ori pentru a trezi direct în ecranul de blocare din Always on Display nu funcționează. Trebuie să atingeți de două ori (4 atingeri).
  • Uneori, un ecran gri poate apărea în timpul unei faze de deblocare.

Nu veți avea niciuna dintre problemele de mai sus dacă vă deblocați telefonul de pe ecranul Always on Display folosind scanerul de amprentă. Dacă întâmpinați oricare dintre problemele enumerate mai sus, o simplă reblocare și deblocare cu amprenta dvs. poate rezolva și problema.

Concluzie

Bănuim că problemele enumerate mai sus sunt legate de tranziția necorespunzătoare a afișajului de la starea Afișare mereu la starea Afișare permanentă și căutăm posibile remedieri. Este posibil ca aceste probleme să nu fie rezolvate niciodată sau să fie rezolvate întâmplător într-o viitoare previzualizare pentru dezvoltatori. Cea mai mare teamă a noastră este că Google vede ceea ce facem și din nou codifică Always on Display. Sperăm să nu se întâmple asta, dar cu siguranță este o posibilitate. Pentru moment, bucurați-vă de funcția Always on Display a Google Pixel 2 cât puteți!