For PC there is f.lux, iOS has the builtin Night Shift since iOS 9.3. These are day-time dependent screen filters that aim to reduce the blue tint, which is considered to negatively influence sleep.

Sadly, on Android I know no app that does the same. There are apps that make the screen more yellow'ish or red'ish, but they all share the same flaw.

Android: Black doesn't stay black

A correctly implemented blue-light filter should reduce the intensity of the blue contribution, and nothing else. Notably, black must remain black. This is fulfilled by both Night Shift and f.lux.

Root-less Android apps seem to simply put a transparent red to yellow layer on top of the screen content (as can be seen by trying them at extreme settings – black areas turn into an increasingly bright red). While this does indeed reduce the blue-light contribution slightly, it strongly increases the black-level effectively degrading screen-contrast to the 1:10 range or below, which again is stressful for the eyes – especially at night, in dark environments.

I found this issue to apply to the apps

  • Twilight (tested myself)
  • Night-mode part of Lux Auto Brightness (also tested myself)
  • CF.Lumen (screenshot from phonearena.com)
  • Bluelight Filter for Eye Care (screenshot from phonearena.com)
  • Night shift: Blue light filter (screenshot fromm giga.de

While f.lux is available for Android, it requires root and seems to fail for Samsung devices, according to their webpage. It is also only a preview version right now.

When searching for an Android solution with Google, all I find are articles that recommend apps that do it wrong (see above).

Is there any root-less Android solution right now, that doesn't have this issue, or a root-app that is more finished than the Android version of f.lux?

In Photoshop Terms

The difference can be explained in terms of Photoshop blend modes (though I used GIMP to create the image at the end):

  • Typical android solutions correspond to the "normal" blend mode, typically with a yellow to reddish layer.

  • A true blue light filter corresponds to the "multiply" blend mode. The effect from f.lux corresponds to a reddish layer (roughly RGB(1.0,0.8,0.0) I would guess) and iOS 9 / Android 7 look like pure yellow RGB(1.0,1.0,0.0) corresponding to a higher color temperature than f.lux. These methods however probably all likely hook into the graphics stack at a lower level than postprocessing the final image, probably instead readjusting the color settings of the monitors to the same effect.

  • The intensity of the filter corresponds to different opacity settings.

For comparison, here an screenshot of this page with multiplicative and normal blend mode and 30% / 60% / 90% opacity. The latter can be done in some android apps, but f.lux / iOS / Android don't allow turning it up that high. These are just meant to illustrate the problem with the "but transparent layer on top" solution.

enter image description here

  • While waiting for recommendations: I didn't try any of those apps myself, but you can find some additional candidates in my list Display Settings. – Izzy Aug 6 '16 at 11:32
  • Note that the Play Books app's "Night Light" mode does it the right way. But it only affects the Books app. I was going to post a question with the slightly stricter requirement of matching the hue of (or at least not further affecting the appearance of) Books' Night Light mode, but instead I'll just +1 this question and hope that a recommendation comes that meets the needs of both of us. – Dan Henderson Apr 9 '17 at 17:15
  • Added some illustration. I noticed that apps actually COULD achieve the desired result, if Android allows multiplicative mixing of the overlay (probably doesn't). Also, with Android 7 now having a blue light filter, it seems unlikely that new apps will come up, even though the choice of the filter color isn't reddish enough for my taste. – kdb Apr 28 '17 at 12:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.