Screen Saver Android implementation (experiment)
Closes #690.
This PR is in a very raw, "prototype" stage. Do not expect everything to work properly.
The hardest part of the work is identifying which Flutter platform features are required to be implemented in order for the app to even work properly.
I suppose data passing could be achieved via communication with the main activity.
It was required to bump minSdk to 24 (was 23).
Testing on an emulator isn't a valid option: every time I click anywhere the screen saver closes despite having set isInteractive to true in the DreamService implementation.
Testing on a real device, it seems everything works fine when "previewing" the screen saver. When the screen turns off during charging, the screen saver appears as well!
Here's a screenshot of the empty Flutter app running as a screen saver on my Pixel 7 Pro. As you can see, the status bar as well as the navigation bar are absent
The FlutterView does not seem to be receiving pointer events (the app is not interactive). I am investigating the issue.
The FlutterView does not seem to be receiving pointer events (the app is not interactive). I am investigating the issue.
My stupidity is beyond comprehension, I merely forgot to write a crucial line of code. Now, everything seems to work a little better. At least the app is receiving pointer events.
@deminearchiver Thanks for the implementation! I tested it a bit, it seems to work fine on most devices running Android 12 and up. I tried hooking up the weather, but it didnβt work. So yeah, itβs kinda hard to get that working in flutter
omg sorry but what's a pullrequests ??
omg sorry but what's a pullrequests ??
A pull request is a term used among developers. It's essentially a formal way to propose changes to a project's codebase and ask for those changes to be reviewed and approved before being added.
If you are a normal user and not a developer, I'm afraid there is nothing here of your interest.
Thank you for your help, but no, I'm a small developer. I develop a few games.