0

I am working on a project that will work on android devices and will convert them in kiosk. So at this moment I am doing R&D on Kiosk mode, but there is very little help on it. But I came across different things. These are using DPM, Using EMM or Using Android Management API

I just wanted to do following things to ship my app to my clients.These objectives are as follow

  1. If client is installing my app, he should follow simple steps (like android permissions) to make my app as default app.

  2. While following simple steps, my app must make android device as Kiosk and should make my app unable to exit by clients user.

  3. My app must be able to clear kiosk mode from device so that client can use his device as simple device

  4. The most important thing is, we are not shipping devices with our app and we may not have any physical access to the client device and client may not be so much technical. So app must do all things

**So from the perspective of these above 4 points , what is best for me please share your knowledge. What will be best for me to go with? Please help me as this is so much confusing... **

A.s.ALI
  • 1,992
  • 3
  • 22
  • 54
  • if you are looking for byod (Bring your own device policy) you can look into device admin api and android for work profile . also android emm api provide us with tools to lock a device in kiosk mode. – Akash Pal Feb 15 '21 at 06:46
  • @AkashPal No its just a device like tablet or kiosk like (devices which are more then 15') so I want to turn those device to Single Kiosk Mode app – A.s.ALI Feb 15 '21 at 07:56
  • then if device is rooted then you can use broadcast of systemboot and launch your app and use a foreground service to monitor that your app is always on foreground – Akash Pal Feb 15 '21 at 08:49
  • if the device is ot rooted then you will have to either get some device that support emm and set then or use any third party emm – Akash Pal Feb 15 '21 at 08:50
  • after android 7.0 most emm provider use device admin api and get themselve to google for android for work and then they have device owner right through which they can install an app as system app so as user cant remove or force stop the application. – Akash Pal Feb 15 '21 at 08:52
  • But as per your requirement of just 15 device i would suggest go for Android fro work and use the dasboard to set kiosk or multi app mode – Akash Pal Feb 15 '21 at 08:53
  • if you need more info please look into flyve-mdm its an open source mdm solution – Akash Pal Feb 15 '21 at 08:54
  • @AkashPal sorry I think you just mis understood my comment. I wrote 15' means 15 inch device. – A.s.ALI Feb 15 '21 at 09:17
  • @AkashPal ok I will look into mdm solutions. But let me know if I want to just give my to client to just install my app and my app will have go trhough setup which will only guide client to setup device as kiosk only for one time. Is it even possible and what should i use?> – A.s.ALI Feb 15 '21 at 09:19
  • no during the device setup either by uploading the apk or scaning qr code the device can be set up – Akash Pal Feb 15 '21 at 09:52
  • and yeah its possible to some extent but not on non rooted device that are of latest version – Akash Pal Feb 15 '21 at 09:53
  • can you please tell me in more detail about what you mean by scanning code and I wanted my app work even if it is not rooted – A.s.ALI Feb 15 '21 at 10:27
  • just look into what and how android for work or android emm works – Akash Pal Feb 15 '21 at 10:41
  • can you send me good link over that. – A.s.ALI Feb 15 '21 at 10:42
  • via adb we can push the app as system app prior to android 8 i guess. i would have to look back http://flyve.org/android-mdm-agent/howtos/installation – Akash Pal Feb 15 '21 at 10:43
  • https://h-mdm.com/open-source/ or https://www.android.com/intl/en_hk/enterprise/enrollment/ – Akash Pal Feb 15 '21 at 10:43
  • @AkashPal That is my main point. Not we and nor our client can perform the point no 2 as mentioned in your link http://flyve.org/android-mdm-agent/howtos/installation – A.s.ALI Feb 15 '21 at 10:46
  • see thats where BYOD concept comes in it will create a seperate profile for it . either that or if you wanna create a mdm solution then you have get with some oem an get the signature of the os and sign ur app using that – Akash Pal Feb 15 '21 at 10:49
  • just look into couple of android for work videos at developer confrence you might get some idea . its not possible to just show you all possiblity the problem being fragmentation of andoird – Akash Pal Feb 15 '21 at 10:50
  • Man BYOD is something else. Consider I have client, He runs business and having employees. Now For him we have made a solution. let say ERP. now Client have purchased some android tablets. Now he just want to install my app that should work on tablets just like kiosk. Note: I do not have physical access to device. nor client would want to do something like DPC commands etc – A.s.ALI Feb 15 '21 at 10:56
  • well i cant help if you cant help yourself . everything cant be spoonfed you need to do reserch a bit . i can say its possible cuz i have worked with mdm provider and they have some given devices only that can be used if you wanna use any device that too can be locked and put in kiosk mode but the way its done now is through work profile – Akash Pal Feb 15 '21 at 11:00
  • you are thinking of just makingg an apk that when install controls the device but brother something have to give to achieve somethiong – Akash Pal Feb 15 '21 at 11:01
  • @AkashPal sir Its the basic idea to create 1 apk and to control everything. But as you hinted that its not possible in that way. I was just asking possible best solution, So please suggest me what should i do, I will do R&D on that – A.s.ALI Feb 15 '21 at 11:21
  • no by control everything i mean remotely adding or removing apk or change device setting as per use . so basically these type of solution if we are using non rooted device then its generally tied with device id or imei and once your app has device admin right which happens when you first set up device after factory reset , if ur app is system app then it has eleveated privilage to monitor internal folders and settings that are restricted for normal app – Akash Pal Feb 15 '21 at 11:55
  • i already told youjust look into android developer channel on youtube they have around 6 - 1 hour long videos at varying level of security. that will clear your vison and youll get what i was trying to say all along – Akash Pal Feb 15 '21 at 11:56
  • https://developers.google.com/android/management/introduction https://www.apriorit.com/dev-blog/473-how-to-build-an-mdm-system https://developers.google.com/android/work/release-solution – Akash Pal Feb 15 '21 at 12:01

1 Answers1

1

Fully managed mode In fully managed mode the entire device is managed and the device needs to be factory reset before setup. To set up a device in fully managed mode you need to use a QR code.

For devices running Android 7.0 or above:

  • Turn on a new or factory-reset device.
  • Tap the same spot on the welcome screen six times to enter QR code mode. Connect to a WiFi network.
  • Scan the QR code.

For devices running Android 6.0:

  • Turn on a new or factory-reset device.
  • Follow the setup wizard and enter your Wi-Fi details.
  • When prompted to sign in, enter afw#setup.
  • Tap Next, and then accept the installation of Android Device Policy.
  • Scan the QR code. Work profile mode In work profile mode corporate apps and data are kept secure in a self-contained work profile while the user keeps control of the rest of the device. To set up a work profile you can either use a QR code or an enrollment link.

Using the enrollment link:

Make the link accessible on the device (send it via email or put it on a website). Open the link. Or using the QR code:

Go to Settings > Google. Tap "Set up your work profile". Scan the QR code. What's next? By now you should have a managed device configured with a basic policy, but there's much more you can do with the Android Management API

for more info : https://developers.google.com/android/work/release-solution

Akash Pal
  • 1,055
  • 8
  • 15