Android features a system-wide ‘Dark Theme’ (or Dark Mode) capability, designed to invert the operating system’s colour palette, replacing bright white backgrounds with deep greys and true blacks. While highly popular for reducing eye strain in low-light conditions and conserving battery life on OLED displays, the ability for users to arbitrarily toggle between Light and Dark themes can introduce liabilities in specific deployment scenarios. On highly customised corporate kiosks, point-of-sale (POS) terminals, or digital signage devices where strict brand compliance dictates a specific, hardcoded Light or Dark UI aesthetic, allowing the user to invert the OS colours breaks the designed user experience (UX) and can render custom applications unreadable if they lack proper dynamic theme support.
This guide explains how to completely disable or lock the ‘Dark Theme’ capability system-wide on Android, enforcing a strict UI aesthetic and preventing users from altering the system’s display rendering.
Disable Dark Theme via Developer Options and Settings
Depending on the OEM (Samsung, Google, Motorola), the Dark Theme setting is heavily integrated into the UI. To enforce a strict block and lock the device to the Light theme, we must modify the core OS display settings and, if necessary, leverage ADB for immutable configuration.
- Unlock the provisioned Android device and open the main Settings app.
- Tap on Display (or “Display & brightness”).
- Under the Appearance section, explicitly select Light. (This forces the OS to immediately revert to the standard white-background aesthetic).
- Disable any automated scheduling: Tap on Dark theme (the text, not the toggle) and ensure “Schedule” is set to None.
- Mandatory for strict enforcement: To prevent the user from re-enabling it, we must use ADB to lock the UI mode in the system settings database. Connect the device to a PC with ADB installed.
- Run the following ADB command to explicitly force the system UI mode to Light (Mode 1):
Note: Setting this value to 1 forces Light mode. Setting it to 2 forces Dark mode. Setting it to 0 is the automatic/time-based default.adb shell settings put secure ui_night_mode 1
Verify the Configuration Lockdown
Changes written directly to the ui_night_mode secure setting take precedence over the standard UI toggles.
To verify the restriction is active, disconnect the device from the PC. Swipe down from the top of the screen to reveal the Quick Settings panel. Locate the “Dark theme” toggle tile. Tapping it will either yield no result or immediately revert, as the secure settings database is enforcing Mode 1 (Light). Furthermore, navigate back to Settings > Display. The OS will remain locked in the Light theme, ensuring absolute brand compliance and consistent UI rendering across the provisioned kiosk or terminal.