Custom themes now possible on rooted Android P devices with Substratum

Android P’s user interface changes were initially met with some controversy (mostly due to perceived similarities with iOS and obvious accommodations for devices with notched displays), but it seems that the criticisms have died down some as people have gotten used to the changes. There’s one missing feature that Android enthusiasts have begging for over the past few years: custom themes. Android Oreo introduced Sony’s theme framework which the popular third-party Substratum theme manager hooked into to provide rootless custom themes. Unfortunately, Android P blocked third-party overlays from being installed by requiring overlays to be signed by the system. For those of you itching to get a system-wide dark theme on Android P, however, the Substratum team has just released a new beta that supports rooted devices.

Android 8.1 Oreo added a partial dark theme but there are some obvious disadvantages to this theme. For starters, the theme is only applied when using a dark-colored wallpaper (though a future update will allow for this theme to be applied manually.) Next, it only themed parts of the Google Pixel Launcher, the quick settings tiles, and the volume panel rather than the entire SystemUI and Framework. In comparison, rootless Substratum gave users the freedom to install whatever custom theme they wanted (sometimes at their own peril.) Google blocked third-party overlays from being installed but if you have root access via Magisk, SuperSU, or LineageOS‘ addonSU, then you’ll be able to bypass these restrictions.

The latest beta, version 997, should work on any device that is on the Android P beta program. That includes the following devices:

Here’s the full changelog of the release:

Substratum public release 995 and beta release 997 changelog Summary: Stable release 995 brings about more fixes for Sungstromeda mode, along with updated translations.

Beta release 997 targets Android P support for rooted devices. Full Changelog Beta release 997 Packages: Ensure installed packages have a valid path SettingsFragment: Remove ternary operator spaghetti and account for Android P Updated P-fix to utilise now-finalised APIs OverlaysManager: Do not wait for intent response on P ThemeManager: Implement uninstall for P Substratum: Implement initial support for Android P

Public release 995 SubstratumTile: Launch with FLAG_ACTIVITY_NEW_TASK substratum: Update all gradle dependencies substratum: Re-add some languages Substratum: Update localisations ShowcaseActivity: Minor cleanup SubstratumUI: Fix navigation bar for API 27 OverlaysAdapter: Remove blue state SubstratumCleanup: Remove more incomplete localisations SubstratumCleanup: Remove all incomplete/unused localisations InformationActivity: Fixup garbled variable name FileDownloader: Rewrite using try-with-resources Fairly automated lint cleanup ThemeManager: use HashSet to avoid duplicated overlays



How to Install Substratum and set-up custom themes

Join the beta program here then download the app from the Play Store below. Visit the Substratum forum on XDA to stay up to date with the latest news on the theme manager. Installing a custom theme is quite simple if you’re rooted. You can follow our previous guide for Android Oreo except you can skip Part 1 entirely.