Display goes black after not reacting to a notification

Hi everyone,

I would like to ask for your advice. I am trying to adapt several of my watchfaces to AMOLED models, and in one case, I am facing a problem where the display goes black if I receive a notification and don't react to it (let it fade out). In that case, the display goes black after the notification disappears. Another way the display goes black is when I cover the display with my palm; the display goes black after I raise my hand.

I read a few posts here on the forum and found some mentions of a similar problem, but I think it was more of a device issue. This is probably not the case for me, because my other watchfaces adapted to AMOLED work fine. I have, of course, compared my watchfaces and did not find any differences that could give me a clue (onHide, onShow, onSleep, etc.).

Do you have any idea what could be the root of the problem?

Thanks!

  • Another way the display goes black is when I cover the display with my palm; the display goes black after I raise my hand.

    What happens if you scroll away from the watchface, then scroll back? (e.g. press DOWN, then UP). Is the watchface initially black, or is it initially drawn properly?

    When your watchface does go black, how do you recover? Does it recover automatically if you wait, or do you have to take some explicit action (e.g. scroll away, then scroll back)?

    What happens if you scroll partially away from the watchface - i.e. press your finger against the screen and drag up/down without letting go so that half of the screen is your watchface and half is the previous / next page (e.g. page of glances)? Does your watchface go black or do you still see half of it on screen? (Note that some watches have had a bug where all CIQ watchfaces go black in this circumstance, so make sure to double check against other CIQ watchfaces.)

  • I finally found the cause of the problem. Of course, it was my mistake and @jim_m_58 was right. I canceled burn-in protection in "onShow". It worked for all situations like scrolling in glances and going back; when reacting to notifications (by swiping them), etc. In all these situations, the watch was not sleeping, so canceling burn-in protection in "onShow" was not a problem. But when I did not react to the notification and this notification disappeared, then "onShow" was triggered, and there was my cancellation of burn-in protection. And because the watch was sleeping at this time, burn-in protection forced the display to go black.

    Thank you @jim_m_58 and @flocsy for your effort and time spent. Have a nice day.

  • You should determine if burn in protection is needed in your view's initialize, and always use that value (true/false) and never change it.  You then use onEnterSleep/onExitSleep to see if the display needs to consider burn in protection.  You don't if onExitSleep was the last one of the two called.