3

I am learning about Kiosk devices. I am going through the docs but stumbled across this thing.

As per docs-

Kiosk Apps are Chrome Apps that are designed to always run fullscreen using Single App Kiosk Mode on Chrome OS and do not allow the user to exit the app. They're great for a purpose-built Chrome device, such as a guest registration desk, a library catalog station, or a point-of-sale system in a store.

There is also a mention of Kiosk Mode

It is an Android kiosk app that replaces the default Home Screen or Launcher and restricts user to accessonly one application or a few allowed applications. ... It has become common to use off-the-shelf mobile devices to run business applications or self-service kiosks.

Though I am unable to understand as to how to develop a Kiosk app for Android.

Raja Jawahar
  • 6,742
  • 9
  • 45
  • 56
Anita Nagori
  • 707
  • 1
  • 7
  • 21
  • 1
    Please read: https://developer.android.com/work/cosu – Morrison Chang Jun 19 '18 at 04:45
  • yes. Just google mobile device management. Most of those apps have kiosk feature. – Aswin P Ashok Jun 19 '18 at 04:47
  • Thank you for your reply. For Kiosk in android i get the concept of lock/unlock and screen pinning. But how to test these apps without having kiosk devices ? Is there any way to do that ? Can we use android emultor ? – Anita Nagori Jun 19 '18 at 04:55
  • You should be able to use Android emulator for testing. – Speditz Jun 19 '18 at 05:05
  • Ok thank you for reply . so just want to clear that kiosk apps are the app which allow my single app to run , on device, disable or hidden home and back , power button, only launch my apps when reboot the system , disable the notification of other apps navigation Can also apply the lock task mode which hides the home and back button and only give functionality to run only a single android application , right ? Am i getting the right concept ? or anything i missed in that ? can you please correnct me if i am wrong ? @ Speditz and @Morrison Chang – Anita Nagori Jun 19 '18 at 05:11
  • 1
    I have made my "kiosk" as a launcher where I catch button events and such. Inside this launcher if need be I can add buttons to certain applications that the user needs the access to. That way the user can only launch the apps that "are allowed". – Speditz Jun 19 '18 at 05:18
  • So can i launch my android apps in launcher by button click ? or second question is there define any specific way to make kiosk as launcher ? – Anita Nagori Jun 19 '18 at 05:25
  • 1
    one more question after made kiosk mode apps can we run these kind of app in such devices : http://prntscr.com/jwkljx I have attached screenshot here – Anita Nagori Jun 19 '18 at 05:27
  • If you can install android apps to that device, from apk or from play store. I see no reason why not. Note: I have only worked with consumer devices, not customized hardware. Also if you found my answer to the original question helpful, mark it as accepted, thank you. – Speditz Jun 19 '18 at 06:41
  • Possible duplicate of [Android: Taking complete control of phone(kiosk mode), is it possible? How?](https://stackoverflow.com/questions/7121508/android-taking-complete-control-of-phonekiosk-mode-is-it-possible-how) – Markus Kauppinen Jun 19 '18 at 07:02
  • @Anita You will need to determine what your device is: relatively unmodified Android Open Source Project (AOSP), a custom version of Android (or Custom ROM )which may grant extra features, or going forward [Android Things](https://developer.android.com/things/). Note that your initial post included ChromeOS based kiosk app which has a different device & management system. – Morrison Chang Jun 19 '18 at 07:24
  • @Anita As you seem new to Android I suggest, setting up the emulator and go through the process of [How to Make a Launcher](https://stackoverflow.com/q/4841686/295004) Once you get all of that, then the documentation becomes clear. – Morrison Chang Jun 19 '18 at 07:33
  • Thank you @MorrisonChang for your reply, yes i am new to kiosk development and have basic Knowledge for android , i have created the app and run as Android Launcher where back,kill,volume options are disabled. But i am not sure this might run for given devices which my client ask for :( – Anita Nagori Jun 20 '18 at 10:34
  • @Anita HAVE YOU DONE IT? – A.s.ALI Jul 16 '21 at 05:06
  • Nope , this was one of our client requirements but we didn’t proceeded further @A.s.ALI – Anita Nagori Jul 22 '21 at 12:49
  • @Anita why didnt you proceeded? did client said no to proceed. But in any case what were your outcomes while researching over making a device a kiosk? – A.s.ALI Jul 23 '21 at 06:29
  • We need to Root the device to make Kiosk and we are did same as well but Kiosk support diffrent devices which require for testing but unfortunately we don’t have same , we able to create the app but testing was pending – Anita Nagori Jul 28 '21 at 05:10

4 Answers4

4

Yes, you can build kiosk apps in android.

In addition to Morrison Chang's link in their comment I suggest you to read this article for more practical approach.

Note: This article has a point on making layer that catches user drag events and such. On newer Android versions(8.0) this no longer works.

Speditz
  • 171
  • 1
  • 8
  • Thank you for reply. How we can test these apps in kiosk devices ? is there any other way to test the same ? – Anita Nagori Jun 19 '18 at 05:03
  • Kiosk apps are basically another launcher. Just make sure you can close the application and return to original launcher. Other than that they are normal applications. – Speditz Jun 19 '18 at 05:11
  • how can I skip or fake the android home or "desktop" transition after boot and before my app is ready? – LucasRT Aug 22 '19 at 09:00
  • You could set your application to default launcher, that way it would be the first application that loads on a restart. When the user is exits the kiosk application ask for a change in launcher, so they get the normal functionality of the device back. Otherwise you have to wait until the system has loaded and your application is ready for launch. – Speditz Aug 23 '19 at 06:57
0

You can create Kiosk application. From Lolipop 5.0 google is providing api for that.

https://developer.android.com/work/cosu

You can use Pinning or LockTask to achieve the Kiosk application feature.

Some like of sample git application

Git Link

Git Link2

Jarvis
  • 1,714
  • 2
  • 20
  • 35
0

You can make kiosk device by making your application owner of the device and then pinning the app on the device. Please follow the below link it gives the detailed concept of making an application an owner device and then you can pin it using the code for pinning

https://medium.com/@ashubansal.ashishbansal/make-your-android-device-a-kiosk-device-so-that-no-one-can-open-anything-in-your-device-except-the-3bb42a0db8ea

Ashish
  • 1
  • It's important to give more context when sharing an answer, the idea is trying to explain why this answers could be the answer, the idea is not only sharing a link but explain the user why and how that can be of value to them. – Carlos Daniel Apr 28 '20 at 18:28
0

If you are using a dedicated device for your kiosk app you can use the Android For Work APIs to have a single application or multi application kiosk. Lock task mode API from the android allows you to lock the specific app to run on the device and always on the foreground. This will disable the Home button and Overview button as well making a true kiosk mode experience.

In order to use the API, you need to use the DevicePolicyManager and run your application as Device owner.

You can also refer here for details on how to create a Kiosk app https://blog.esper.io/best-way-to-build-android-apps-in-kiosk-mode

AnkitG
  • 95
  • 1
  • 9