Aktivera Google Pixel 2:s Always on Display på Nexus 6P, Pixel och Pixel XL utan rot

Vi har upptäckt hur man aktiverar Google Pixel 2:s nya Always on Display-funktion på Nexus 6P, Google Pixel och Pixel XL utan att behöva root!

De Google Pixel 2 och Pixel 2 XL är de nyaste smarttelefonerna i Googles Pixel-smarttelefonserie och medan hårdvaran mestadels är en stegvis förbättring jämfört med den tidigare generationens Pixel-telefoner, programvaran har ett par riktigt fiffiga nya egenskaper. Det finns den nya kameratekniken som används i telefonens Porträttlägesfunktion, den alltid lyssnande musikigenkänningsfunktionen kallas Nu spelas, och en Always on Display-funktion. Tyvärr kommer ingen av dessa funktioner att ta sig till Googles tidigare smartphones, åtminstone officiellt. Vi har tidigare visat att det är möjligt att aktivera Pixel 2's Always on Display via anpassad ROM, men vi upptäckte nyligen att det är möjligt aktivera Always on Display på Nexus 6P, Pixel och Pixel XL utan root.

Bildkrediter: XDA Junior Member InFlames03


Always on Display kan nu aktiveras tack vare Android 8.1 och Substratum

Tidigare rapporterade vi att det skulle vara omöjligt att aktivera funktionen Always on Display på någon äldre Google-telefon. Det beror på att Google hårdkodat funktionen som gör att Always on Display alltid returnerar falskt. Detta var fallet i källkodssläppet för Android 8.0 Oreo, men är inte längre sant med lanseringen av Android 8.1 Oreo Developer Preview 1.

Som visas i skärmdumparna ovan returnerade funktionen som ansvarade för att avgöra om Always on Display skulle aktiveras eller inte tidigare endast "falskt". I det senaste AmbientDisplayConfiguration kod, men den söker nu efter ett booleskt konfigurationsvärde som heter "config_dozeAlwaysOnDisplayAvailable" vilket är inställt av Google att vara sant på Pixel 2 och Pixel 2 XL, men falskt på alla andra telefoner de tillverkar.

För att vara mer specifik använder Google en ramöverlagring installerad i /vendor/overlay som heter framework-res_auto_generated_rro för att ange värdet för denna konfiguration. Eftersom detta ramverksöverlägg är baserat på OverlayManagerService (OMS), kan vi skapa vårt eget ramverksöverlägg till force config_dozeAlwaysOnDisplayAvailable för att returnera "true" på Nexus 6P, Pixel och Pixel XL.

Detta är möjligt eftersom OMS, temaramverket byggt av Sony, är det integrerad med start i Android Oreo. Tack vare detta kan vi använda de inbyggda kommandona för att hantera och installera våra egna teman—allt utan att kräva root. Genom att göra det upptäckte utvecklare hur man kan få det populära Substratum tema manager arbetar på Android Oreo-enheter. Alltså, för att få Always on Display att fungera, vi kommer att använda Substratum theme manager med dess Andromeda-plugin för att installera vår speciella ramöverlagring på Nexus 6P, Pixel och Pixel XL.

Slutligen finns det ytterligare en förvirringspunkt jag vill ta upp - nämligen det faktum att vi använder vad som populärt kallas en "temamotor" för att aktivera en dold funktion. Även om Substratum vanligtvis används för att installera teman, är det mer korrekt att kalla dessa teman "resurs överlägg." Det beror på att dessa "teman" anger värden som ersätter de ursprungliga resurserna för deras mål app. Vanligtvis ersätter resursöverlägg bara färgvärden i den ursprungliga appen, men de kan också rikta in sig på heltal, strängar eller booleska värden i appens resurser. Vissa befintliga substratöverlägg använder detta för att anpassa låsskärmen, skärmen för senaste appar och snabbinställningar till exempel.

I vilket fall som helst, förhoppningsvis har du en bättre förståelse för vad det är vi ska göra. Följ handledningen nedan för att aktivera Always on Display från Pixel 2 till första generationens Google Pixel-telefoner samt Nexus 6P.


Hur du aktiverar Google Pixel 2:s Always on Display-funktion på Nexus 6P, Pixel och Pixel XL

Krav:

  • Nexus 6P, Google Pixel eller Google Pixel XL. Nexus 5X kommer att fungera men rekommenderas inte på grund av bristen på en OLED-skärm.
  • Android 8.1 Oreo Developer Preview 1. Du kan hitta firmwarefilerna här.
  • Licens för Substratums Andromeda-plugin ($1.99). Utan detta kommer du inte att kunna installera ramöverlägget vi gjorde. Åtminstone inte lätt.

Handledning

Särskilt tack till XDA Junior Member InFlames03 för att hjälpa till med upptäckten av den här funktionen, testa den och slutligen erbjuda en ramöverlagring för nedladdning. Kolla in hans nya Oreo och Färsk teman.

  1. Konfigurera Substratum och dess Andromeda-plugin. Du kan följa denna handledning hela vägen tills du är klar med del 1.
  2. Installera alwaysOn-enabler APK från AndroidFileHost eller den Pixel Enabler-appen från Google Play Butik. Den förra är bara en grundläggande överlagring som möjliggör den här funktionen medan den senare kommer att inkludera fler funktioner i framtiden.
  3. Öppna Substratum och leta efter "Always On Enabler" av Sai i temalistan. Tryck på den.
  4. Knacka på "välj för att växla alla överlägg."
  5. Tryck på flytande färgrulleknapp.
  6. Välj "Bygg & Aktivera."
  7. Starta om.
  8. Öppna Inställningar --> Display. Expandera "Avancerad"kategori och tryck på"Ambient display."
  9. Du borde se en "Alltid på" växla. Inaktivera och återaktivera den. Njut av Always on Display!

Alternativt kan du titta på följande video som går igenom de grundläggande stegen som krävs för att aktivera Always on Display. Videon spelades in av XDA Senior Member eqbirvin på sin Google Pixel XL som kör Android 8.1 Oreo. Observera att vi fortfarande rekommenderar att du startar om även om videon inte visar någon omstart.

Varningar

Nexus 6P, Pixel och Pixel XL erbjuder inte en Alltid på skärm-funktion som standard eftersom deras skärmar inte är korrekt inställda för att gå in i lågströmsläge som Pixel 2:s skärmar är. Att använda denna överlagring för att aktivera Always on Display kan därför betraktas som ett hack eftersom det inte är utan dess förbehåll. Vi har inte använt det här under en längre tid för att mäta strömavbrott eller andra potentiella problem, men hittills är de här problemen vi stött på:

  • Att trycka på strömknappen för att vakna direkt till låsskärmen från Always on Display fungerar inte. Du måste trycka på strömknappen två gånger.
  • Dubbeltryckning för att vakna direkt till låsskärmen från Always on Display fungerar inte. Du måste dubbelknacka två gånger (4 tryck).
  • Ibland kan en grå skärm dyka upp under en upplåsningsfas.

Du kommer inte att ha några av problemen ovan om du låser upp din telefon från skärmen Alltid på skärmen med fingeravtrycksläsaren. Om du stöter på något av problemen som anges ovan kan en enkel återlåsning och upplåsning med ditt fingeravtryck också lösa problemet.

Slutsats

Vi misstänker att problemen som anges ovan är relaterade till att bildskärmen inte övergår korrekt från läget Alltid på skärm till läget på skärmen och undersöker potentiella korrigeringar. Det är möjligt att dessa problem aldrig åtgärdas, eller så kan de lösas av en tillfällighet i en framtida förhandsgranskning av utvecklare. Vår största rädsla är att Google ser vad vi gör och återigen hårdkodar Always on Display. Vi hoppas att det inte kommer att hända, men det är verkligen en möjlighet. För nu kan du njuta av Google Pixel 2:s Always on Display-funktion medan du kan!