msimonides / homerplayer

An audio book player for the elderly and visually impaired
https://msimonides.github.io/homerplayer/
MIT License
37 stars 19 forks source link

Is making the application a device owner from the command line truly the only way to allow the application to enter kiosk mode? #11

Open TheIronMarx opened 7 years ago

msimonides commented 7 years ago

Why do you ask?

It is the only way to enable an app to pin itself to the screen in a way the user cannot disable. So yes, it's the only way to get a full, software-only kiosk mode. Of course you can find a number of libs here on GitHub that use some tricks to disable the Back and Home button etc. Some of them require rooting the device. I've decided not to use any of these tricks, especially that I don't know how to get rid of the top status bar, notifications and the task list button.

In April I have added a "Simple Kiosk Mode" that uses the combination of the Immersive Full Screen Mode and making Homer Player the Home app. The full screen mode hides the buttons and status bar but they can be brought back by the user by sliding a finger form the top/bottom edge towards the screen. If you cover the edges with adhesive tape you get a "hardware-assisted" kiosk mode without the need to make the app a device owner :) This is the approach I have described in my Instructable: http://www.instructables.com/id/How-to-Build-an-Audiobook-Player-for-Your-Grandma/

Making the app a device owner is difficult for many users so I'll probably look into automating it somehow (e.g. by making a simple desktop app that downloads ADB and runs the command).