OnScreenClock: permission problem

Several users have brought to my attention that the clock app no longer works after a device factory reset due to a permission problem. The dreaded message appears:

Unfortunately, your device’s rom does not support a user interface for granting the overlay permission :/

These are my findings so far:

Not brand or model specific problem
When I received the first report, I uninstalled the app on my Nexus Player (Oreo) and reinstalled it and guess what: same problem. In the meantime I received reports on Sony TV and Nvidia Shield TV.

Android TV Marshmallow and higher
Yes, all trouble started with Marshmallow. 😉 I received reports on Nougat and Oreo and tested the app also on a Nexus 7 tablet (KitKat) and Pie phone. Unsurprisingly on KitKat no problem since no permissions exist yet, on Pie my phone showed a permission dialog to grant the permission (which is good, but still abnormal).

Unfortunately, I have not encountered an Android TV rom yet which provides a user interface for granting the overlay permission (it’s not in stock android TV and none of the vendors seem to care).

Fresh installs
All reports were due to device resets, but as I already pointed out: simply uninstalling and reinstalling the clock app will exhibit the problem. Updating the app is no problem since it will preserve the previously granted permission. By taking advantage of this, I can test out a fix without impacting existing users.

 

I did a quick search on the interwebs but no luck so far, it’s kind of a niche topic after all. 😉 I suspect a google Play Services or Play store update is the culprit but didn’t find any news yet. If it’s part of a security fix, information will be sparse anyhow.

I see several options:

  • google did a small fuckup in the play services or store (as they did with the remote not responding, deep sleeping) and might fix it (can take several months)
  • google intentionally changed the way the overlay permission is granted (and no longer wants to grant it automagically)
  • the permission not being granted anymore might be a side effect of some other policy change

Overlay permissions have always been tricky on android (tv), so let’s hope there is a solution possible.. (or a hack at least)

3 thoughts on “OnScreenClock: permission problem

    • hi Stefan,

      thank you for trying to help me figure this out, much appreciated. However, I was already aware of this bug report (last comment is by me 😉 ). I have already created serveral test versions with higher target sdk and other possible fixes but in vain.. :/

      cheers

  1. Hi, I love your ATV on screen clock, but been bugged with the issue you describe. It is only happening on my ATV 7.1.1 device after runnings updates from the play store, if I install your app from PlayStore first, without updating anything else it works.

    But to the point: I read about issues with apps targeting sdk level 23 (Android 6).
    As solution, target sdk level 24+ (Android 7+) and ask explicitely for the permission.

    Source: issuetracker.google.com/issues/37119304

    I’m not a programner, sorry if not helpfull

Leave a Reply

Your email address will not be published. Required fields are marked *