kaaholst / android-squeezer

Remote control for your Logitech Media Server ("Squeezeserver" etc) and players.
Apache License 2.0
77 stars 17 forks source link

Screensaver feature request #755

Closed seroper closed 1 year ago

seroper commented 2 years ago

I use the app on multiple Amazon Fire tablets around the house, works well, but I'd love a screensaver option within the app, ideally a clock and tapping the screen would return to Squeezer without having to press the power button or reopen hte app. This would make it a better alternative to the Logitech controllers. Thanks!

kaaholst commented 2 years ago

Thanks for the suggestion. I don't think it's possible though, Android doesn't allow it,

From the documentation:

widgetCategory Declares whether your widget can be displayed on the home screen (home_screen), the lock screen (keyguard), or both. Only Android versions lower than 5.0 support lock-screen widgets. For Android 5.0 and higher, only home_screen is valid.

I think an alternative approach would be possible. We can keep the screen turned on for certain displays. E.g. the Now Playing screen and/or the current playlist. We could even make a dedicated screensaver display which displays a clock after a certain time, and returns to Squeezer when tapped.

How does that sound?

seroper commented 2 years ago

Thanks for the fast reply.

I really like the alternative, something that allows the tablet to be used in bedroom, so a dark themed clock and tap to get to Now Playing would be great.

I'm very happy to beta test etc if I can help.

kaaholst commented 2 years ago

To keep the screen on is directly supported in android. This will come in the next version of Squeezer. However I understand, you are not particularly interested in that.

The lockscreen is off limits for apps for whatever reason. It might be possible to listen for [user activity](https://developer.android.com/reference/android/app/Activity#onUserInteraction()), and if no activity for a configurable period bring up a clock as an screensaver, which keeps the screen on, and returns to Squeezer when tapped. To align expectations this is not the lockscreen, meaning that there is no security, and that it's better suited for devices on power.

Before this is started please investigate this: On my phone (pixel 6, Android 12), I'm able to achieve this using stand Android settings.

  1. Set the lockscreen to always display time
  2. Set screen lock to none.

Maybe similar is possible on Amazon Fire?

seroper commented 2 years ago

Many thanks for looking into this.

I don't want the security of the lock screen, it will always be at home so no security makes it easier to use.

On Fire tablets I can't set the screen a lot, it does display time but also Amazon adverts, I can't set lock screen to none.

The only options are enable pin/password, which is off so it unlocks without a code, just swipe up. Also enable device dashboard, to get into the Alexa device management.

kaaholst commented 2 years ago

For the next version of Squeezer, I have implemented options to keep the screen or to use a screensaver.

If you would help testing, it will be greatly appreciated.

Please try this apk.

Set up via 3-dot menu in the right / Settings / Keep screen on

kaaholst commented 1 year ago

This available from version 2.3.0, so closing this. Thank you!