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:
- Google Pixel
- Google Pixel XL
- Google Pixel 2
- Google Pixel 2 XL
- Essential Phone
- Nokia 6.1 (China)
- Nokia 7 (China)
- Nokia 7 Plus
- Nokia 8 Sirocco (China)
- OnePlus 6
- Oppo R15 Pro
- Sony Xperia XZ2
- Vivo X21UD
- Vivo X21
- Xiaomi Mi Mix 2S
Here’s the full changelog of the release:
Substratum public release 995 and beta release 997 changelog
- Stable release 995 brings about more fixes for Sungstromeda mode, along with updated translations.
- Beta release 997 targets Android P support for rooted devices.
- 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.
Want more posts like this delivered to your inbox? Enter your email to be subscribed to our newsletter.