OvalShape drawable dark color bug

In current Voodoo Screen Tests Patterns app, that allows to measure displays of Android devices, I draw a OvalShape that has a background color following a specific sequence expected by a software controlling a colorimeter.

However as Erica Griffin noticed, on some devices the near-black measurements were inconsistent with what you could perceive with your own eyes or by taking pictures or filming the display using long exposure times.
Additionally, in my measurements I was most of the time getting readings for black on LCD panels (a fair amount of blue leaking, some red and green) while measuring the same thing on IRE1 (RGB 3, 3, 3), IRE2 (RGB 5, 5, 5) and then having a valid reading for IRE 3 (RGB 8, 8, 8).

There was then something wrong with my app designed to help running accurate display measurements, FAIL!

Long story short, the bug was not in my app but in Android graphic framework, but only on some devices and not the ones I used and tested during development.

Description this bug:

  • Render non-rectangular shapes as pure black #000000 color instead of another dark color.
  • Characteristics of the colors rendered as black:
    • None of the primary Red, Green or Blue channels attain the value of 7 on a scale of 0-255
    • Example of colors rendered as black:
      • Grays: #010101, #020202, #030303, #040404, #050505, #060606
      • Dark colors: #000006, #050603, #060003
    • Example of colors rendered correctly:
      • Grays: #070707, #080808 and so on
      • dark colors with one channel higher than value 6: #000007, #060607
  • RectShape is not affected.
  • At least RoundRectShape (or android:shape=”rectangle” with a corner), OvalShape at least are affected. I didn’t test other shapes.

List of devices I tested and are affected:

  • Samsung Galaxy S III, Galaxy Note II, Galaxy S II, Galaxy Note, Galaxy Tab 10.1, Galaxy Tab 2 7.0
  • HTC One
  • Sony Xperia T
  • ASUS Transformer
  • LG Optimus 2x

List of devices I tested that are not affected:

  • Google Nexus S, Nexus 10, Nexus 7, Galaxy Nexus
  • Samsung Galaxy S4

I’d like to help completing the list of affected devices in order to raise awareness of this bug with manufacturers, encourage people to contact them and get this bug fixed.

In this purpose, here’s a little app I wrote named OvalShape ColorBug, available on Google Play (recommended download) and directly on my server.
Complete source code is available on github as well.
This apps allows to diagnose instantly if your device is affected by the bug described here or not.

Please describe your experience with this test and maybe post a screenshot of the rendering on your own devices.

I’ll also publish very soon an update of Screen Tests Patterns apps in order to get the patterns colors and measurements right.