Exklusiv: Android Oreo erhält innerhalb einer Woche Root-freien, systemweiten Theme-Support

click fraud protection

Die neueste Android-Oreo-Version von Google verfügt bereits über integrierte native Theme-Unterstützung und wird dank der Substratum-Theme-Engine in einer Woche verfügbar sein.

Update 13.09.17: Das Andromeda-Add-on für Substratum, das benutzerdefinierte Designs auf nicht gerooteten Android-Oreo-Geräten ermöglicht, wurde jetzt veröffentlicht. Weitere Einzelheiten finden Sie in diesem Artikel. Der Originalartikel bleibt unten.

Mit jedem neue Version Für die meisten Nutzer gibt es weniger Gründe, das Betriebssystem Android von Google zu nutzen Rooten Sie ihre Geräte. Einer der am häufigsten genannten Gründe für die übrigen Benutzer, die sich immer noch für das Rooten ihrer Geräte entscheiden, ist die Aktivierung der systemweiten Theme-Unterstützung. Typischerweise wird dies über das Substratum verwaltet Themenrahmen seit dem unglücklicher Untergang der CyanogenMod Theme Engine. Im Laufe der Zeit wurde die Team hinter Substratum hat hart daran gearbeitet, durch die Integration der Substratum-Unterstützung Unterstützung für mehr Geräte bereitzustellen

auf ROM-Ebene sodass es ohne Root-Zugriff ausgeführt werden konnte. Und jetzt hat das Team das Projekt über das hinausgebracht, was sich jeder von uns hätte vorstellen können Volle systemweite Theme-Unterstützung ohne Root für jedes Android Oreo-Gerät.

Screenshots werden angezeigt Sais Android Oreo Black Theme Läuft auf einem nicht gerooteten Google Pixel unter Android Oreo 8.0.0

Um Ihnen eine Vorstellung davon zu geben, wie Das ist eine unglaubliche EntwicklungBedenken Sie, dass nun Folgendes möglich sein wird ohne Wurzel:

  • Thematisierung der Android Framework und Android System-Benutzeroberflächesowie alle anderen Systemanwendungen. (Viele von euch werden es tun Liebe Endlich ein dunkles Thema verfügbar!)
  • Thematisierung von jede Drittanbieteranwendung
  • Benutzerdefinierte Schriftarten für Anwendungen von Drittanbietern
  • Viele andere Modifikationen wie ein Statusleisten-Center-Clock-Mod

Die Liste geht weiter! Substrat hat eine umfangreiche Liste der verfügbaren Themen die das Framework unterstützen (alles wird in dieser kommenden neuen Version von Substratum für Android 8.0 unterstützt), eine aktive Community auf Google+ und unsere eigenen Foren, und angesichts dieser Entwicklung wird die Unterstützung nur noch zunehmen!


Android Oreo und der Overlay Manager-Dienst

Ein Beispiel einiger Substratum-Themen.

Seit der Gründung von Google native Unterstützung für Sonys Runtime Resource Overlay (RRO) Theme-Engine in Android 6.0 Marshmallow, wir haben gewartet Damit Google eine integrierte Schnittstelle sowie öffentliche APIs bereitstellt, mit denen Entwickler sowohl System-Framework-Anwendungen als auch Anwendungen von Drittanbietern thematisieren können. Leider brachte die Veröffentlichung von Android Nougat wenig Neues auf den Tisch, seit Sonys RRO zum Android Open Source Project (AOSP) hinzugefügt wurde.

Aber dank der sorgfältigen Arbeit der Ingenieure bei Sony Mobile entwickelte sich die RRO-Theme-Engine schließlich zu dem sogenannten Overlay Manager Service (OMS), auf dem Substratum basiert. Sony war der Pionier in Bezug auf eine Open-Source-Theme-Lösung, aber seitdem ihre OMS-Theme-Engine in AOSP akzeptiert wurde Zum Zeitpunkt der endgültigen Veröffentlichung von Android 7.1 besteht die einzige Möglichkeit für Benutzer von Nicht-Sony-Geräten, die Theme-Engine zu nutzen, in einer benutzerdefinierten Version ROM.

Das hat sich in Android 8.0 geändert. Als Substratum ursprünglich für veröffentlicht wurde Erste paar Vorschauen für Android O-Entwickler, das haben die Entwickler von Substratum erkannt volle Unterstützung für Sony OMS war verfügbar. Dies bedeutet, dass ein Benutzer ein vorhandenes, von Substratum unterstütztes Design installieren könnte und es auf Android-Oreo-Geräten voll funktionsfähig wäre, ohne dass ROM-Patches erforderlich wären. Es gab jedoch nur ein Problem: Für die Aktivierung eines installierten Substratum-Themes war Root-Zugriff erforderlich. so dachten sie zumindest.


Rootlose, systemweite Substratum-Theme-Unterstützung für Android Oreo

Während die Entwickler in aller Stille ihre Arbeit an der Frage, Android-Oreo-Benutzern eine völlig rootfreie Theme-Lösung zu verschaffen, auf die lange Bank schieben burner haben wir uns unabhängig in jede Android O-Entwicklervorschau vertieft und Beweise für die Theme-Engine gefunden, die im Spiel ist. obwohl wir haben es falsch identifiziert als basierend auf dem älteren RRO und nicht auf dem neueren OMS von Sony. Google hat die Community sogar über die Theme-Unterstützung geärgert entwicklerzentriertes AMA drüben auf Reddit und erklärte, dass noch einige Hürden zu überwinden seien, bevor eine vollständige Theming-Lösung in Android integriert werden könne.

Da wir mit dieser Antwort nicht zufrieden waren, wollten wir sehen, wie weit Google bei der Theme-Unterstützung für Android Oreo gegangen ist. Um das zu tun, habe ich mich vertieft der Quellcode von Android 8.0 Sobald die endgültige Veröffentlichung veröffentlicht wurde, entdeckte ich das Vorhandensein von ADB-Shell-Befehlen, die Overlays aktivieren oder deaktivieren könnten, worüber XDA-Autor Adam Conway gestern berichtet hat.

Deaktivieren des Standard-Overlays

Anfangs war ich von dem Ergebnis nicht allzu beeindruckt, da es meiner damaligen Kenntnis nach funktionell nutzlos war, da ich und meine Kollegen den Eindruck hatten, dass die Installation nicht funktionierte Für ein Theme war weiterhin Root-Zugriff erforderlich, da die Theme-Dateien in einen Ordner verschoben werden müssten, auf den der Benutzerbereich nicht zugreifen kann (in /system/vendor/overlay, wie RRO funktioniert). Nicholas Chum Er selbst, einer der Hauptentwickler von Substratum, kommentierte unseren Beitrag, dass ihm die Existenz dieser Befehle schon seit geraumer Zeit bekannt sei und habe es bereits für Android O-Builds verwendet.

Eine Person sah jedoch eine Chance, nachdem wir gestern unseren Artikel veröffentlicht hatten. XDA ist ganz eigen Jeff Corcoran, der Entwickler hinter unserem hauseigenen XDA Labs-Anwendung, erkannte, dass es einen möglichen Workaround gab, um die native Befehlszeilenschnittstelle von Android Oreo für OMS ohne Root zum Laufen zu bringen. Es handelte sich um eine Methode, die von verwendet wurde Helium, der beliebten Nicht-Root-Backup-Lösung, und neuerdings auch von der Open-Source-Alternative Greenify namens Brevent.

Erhöhte Privilegien durch ein Skript

Normalerweise ist das „cmd-Overlay„Befehle, die Google zur Oreo-Version hinzugefügt hat, können nur über ein Gerät mit Root-Rechten oder über ein Gerät ausgeführt werden, das an einen Computer angeschlossen ist, der die Android Debug Bridge (ADB)-Shell aufruft. Eine Handvoll cleverer Entwickler, wie die Helium- und Brevent-Entwickler, haben es im Laufe der Jahre herausgefunden wie man die Berechtigungen einer auf dem Telefon ausgeführten Anwendung im Wesentlichen anhebt, um sie an die von ADB anzupassen Hülse. Dabei kann die Anwendung Befehle senden, die ihr aufgrund eingeschränkter Berechtigungen normalerweise nicht möglich wären. Im Fall von Substratum bedeutet das: Die Anwendung kann Substratum-Designs ohne Root installieren und dann aktivieren oder deaktivieren.

Diese Erkenntnis war ein wesentlich Durchbruch, der erst gestern Abend entdeckt wurde. Innerhalb weniger Stunden konnte Nicholas (mit Hilfe von Jeff) eine schnelle Alpha-Version eines rootlosen Substratum-Themenmanagers für Android-Oreo-Geräte erstellen. Und es funktioniert – allerdings mit ein paar Einschränkungen.

Vorbehalte der wurzellosen Substratunterstützung

Der Prozess, der erforderlich ist, um der Substratum ADB-Shell erhöhte Rechte zu gewähren, erfordert die Verwendung von a sehr einfach und leicht Desktop-Anwendung (oder einfach ein ADB-Shell-Befehl, wenn Sie wissen, was Sie tun). Nach der Gewährung funktioniert Substratum wie erwartet und kann alle installierten Substratum-Designs verwalten. Alle von Ihnen installierten Designs bleiben installiert bis Sie sich entscheiden, es erneut über Substratum zu deinstallieren.

Allerdings sind die Privilegien, die Substratum gewährt werden, vorübergehender Natur gehen verloren, wenn der Benutzer einen vollständigen Neustart durchführt (Allerdings geht das Privileg glücklicherweise bei sanften Neustarts der System-Benutzeroberfläche nicht verloren.) Das bedeutet, dass Sie das Desktop-Programm erneut ausführen müssen, wenn Sie Ihr Telefon neu gestartet haben und Substratum zum Hinzufügen, Entfernen oder Ändern eines Themas verwenden möchten. Das möchte ich noch einmal betonen Alle von Ihnen installierten Designs bleiben auch nach einem Neustart installiertDas heißt, wenn Sie nur gelegentlich ein paar Themen ändern möchten, sollte dies perfekt für Sie sein. Sie sollten auch in der Lage sein, das Thema über das Menü „Einstellungen“ zu wechseln, als die Option „Design“ der Entwicklervorschau Unter „Anzeigeeinstellungen“ werden dann installierte Designs erkannt und Sie können zwischen ihnen wechseln

Abschließend muss ich noch etwas erwähnen, das offensichtlich erscheint, wenn man darüber nachdenkt, das man aber in der Aufregung über Neuigkeiten vielleicht vergessen hat. Ihr Gerät ist immer noch nicht gerootet. Das bedeutet, dass Sie keine Dateien berühren oder ändern können, für deren Bearbeitung unbedingt Root-Zugriff erforderlich ist, selbst wenn das von Ihnen installierte Substratum-Theme versprochen hat, etwas zu ändern. Tut mir leid, aber das bedeutet leider, dass Sie keine systemweite Änderung der Schriftart vornehmen können Bring die Blob-Emojis zurück, obwohl, wie eingangs erwähnt, es Ist Es ist möglich, dass ein Substratum-Design die Schriftarten einzelner Anwendungen ändert.

Die Notwendigkeit des Substrats

Lassen Sie uns jetzt ein wichtiges Detail klären. Wann kommt das? Wie im Titel erwähnt, sollte es die erste öffentliche Verfügbarkeit des rootlosen Substratum für Android 8.0-Geräte wie Google Nexus 5X, Google Nexus 6P, Google Pixel und Google Pixel XL sein innerhalb von 1 Woche. Das ist keine Garantie Auf jeden Fall, da sich im Entwicklungsprozess Dinge ändern können, die möglicherweise zusätzlichen Zeitaufwand erfordern, aber bei OMS ist dies bereits der Fall Da es in AOSP vollständig unterstützt wird, arbeitet das Substratum-Team jetzt nur noch an der Schnittstelle zwischen der Substratum-App und Unrooted Geräte.

Als nächstes: Wird es kostenlos sein? NEIN. Das Substrat für nicht gerootete Android-Oreo-Geräte wird a sein kostenpflichtige Bewerbung. Ich kann Ihnen nicht sagen, wie viel es kosten wird, da Nicholas sich noch nicht für einen Preis entschieden hat, aber seien Sie versichert, dass der Preis angesichts des Wertes dessen, was Sie erhalten werden, fair sein wird. Bisher war Substratum für viele Geräte frei verfügbar. Erwägen Sie daher, diese Art der Entwicklung zu unterstützen, indem Sie zunächst Team Substratum unterstützen. Sie können entweder warten, bis Google irgendwann das dunkle Thema veröffentlicht, das Sie sich schon immer gewünscht haben (ha, gut). oder Sie können ein paar Cent investieren, um die unabhängige Entwicklung zu unterstützen, die viele Menschen für wichtig halten gewährt.

Immer noch nicht von seinem Wert überzeugt? Du kannst versuchen Installieren von Substratum-Designs auf Ihrem eigenen nicht gerooteten 8.0-Gerät. Tatsächlich haben wir oben genau das getan. Natürlich hatten wir dabei ein wenig Hilfe von Nicholas. Wenn Sie ein vorhandenes Substratum-Theme aus dem Google Play Store installieren möchten, sind hier die allgemeinen Schritte:

  1. Laden Sie die APK-Datei herunter und installieren Sie sie auf Ihrem Gerät.
  2. Extrahieren Sie den Inhalt und kompilieren Sie jedes Overlay in einer einzelnen APK-Datei für jede App, die Sie thematisieren möchten
  3. Installieren Sie jede einzelne Overlay-APK-Datei, die Sie in Schritt 2 manuell kompiliert haben
  4. Führen Sie für jedes einzelne Overlay-APK, das Sie installieren, den folgenden Befehl aus, um es zu aktivieren: cmd overlay enable
  5. Wenn Sie die Priorität von Overlays ändern möchten, verwenden Sie: cmd overlay set-priority PARENT|lowest|highest
  6. Listen Sie alle Ihre installierten Overlays auf mit: cmd overlay list
  7. Entfernen Sie alle unerwünschten Overlays mit: cmd overlay disable

Wenn Sie wirklich die Befehlszeile zum Verwalten von Themen verwenden möchten, seien Sie unser Gast! Persönlich kam ich nicht über Schritt 2 hinaus. Substratum verwendet keine versteckte Methode, die Sie nicht selbst entwickeln können, sondern es erschafft sie weit für Sie einfacher zu verwalten. Wenn es möglich ist, etwas manuell zu erledigen, eine Anwendung das aber viel einfacher für mich erledigen kann, neige ich dazu, die App einfach ihre Arbeit machen zu lassen. Aber das liegt an Ihnen.

Ich persönlich bin es wirklich, wirklich aufgeregt um zu sehen, wohin das führt. Für alle Geräte, die noch kein integriertes Theme-Management-System unterstützen (z. B. Motorola- oder OnePlus-Geräte), gibt es jetzt einen weiteren Grund, sich auf das Android 8.0-Update zu freuen. Für diejenigen unter Ihnen, die das Glück haben, diesen süßen Oreo bereits zu probieren, gibt es in einer Woche etwas, auf das sie sich freuen können.


P.S. Samsung-Benutzer, kannten Sie Ihre Geräte? unterstützen bereits Substratum-Themen ohne Root zu benötigen?

P.P.S Sind Sie als Entwickler daran interessiert, mehr über Substratum zu erfahren? Schauen Sie sich Nicholas's an Tolle Diashow-Präsentation hier!