-5

We have some Android apps are installed to our company smartphones with Android 7.

Sometimes our users uninstall those apps or making dificult to use it properly.

We asked our Android developers investigate posibility to prevent users to

  1. Uninstall app
  2. Stop services
  3. Turn off Mobile Data or WIFI services

They answerd is impossible to do it at all.

Well... We like to configure Android devices for special company usage with strong restrictions as described above.

Is it possible to archive it using Android SDK? Is any posibility to do it?

Thank you!

--------- UPDATE #1 ------------------------------------------------

I gues the best idea is to use Android Device Administration API https://developer.android.com/guide/topics/admin/device-admin.html

and mix it with approaches described

Require a password to uninstall/remove application

Android - Start service on boot

Application without app launcher icon

I mean once we install custom enterprise app APK we can also install app/service without ICON and is having 'special' name so user cannot by his knowlidge identify it by icon (no icon at all) and by service name (it should mimic a native Android Service). This non-icon-service should listen activites user does and prevent to execute him to do dangerous activity by activating PIN/PASSWORD screen. Well user shouldnt know PIN/PASSWORD.

This kind of workaround looks likes a legal fishing way to avoid breaking stuff we need like

  1. Uninstall app
  2. Stop services
  3. Turn off Mobile Data or WIFI services

---------- UPDATE #2 --------------------------------

The conclusion is the only including app in firmware is only way to make app undeletable 100%. There is no other options.

---------- UPDATE #3 and the last one ------------------

Utilize and complement Android's enterprise features

NoWar
  • 36,338
  • 80
  • 323
  • 498
  • 1
    Basically the answer is **no**, since you should not be able to prevent users from uninstalling apps. But there are some services, which are called `MDM systems`, who's aim is to manage users' apps. Investigate that way. – Vladyslav Matviienko Jan 25 '18 at 07:34
  • @VladMatvienko Good catch Vlad! Pls provide more details. – NoWar Jan 25 '18 at 07:43
  • 1
    you can make the apps system apps in that way only rooted devices can uninstall the apps – Zacktamondo Jan 25 '18 at 07:48
  • @Zacktamondo It sounds good. I found a similar approach here https://www.androidauthority.com/install-user-app-as-system-app-how-to-93522/ Would you mind post your answer with some links how to do it for Android 7 and Android Studio 3 please? – NoWar Jan 25 '18 at 07:50
  • The feature you need is called ["device admin"](https://developer.android.com/guide/topics/admin/device-admin.html). It is indeed possible to place some restrictions on device usage, including inability to remove the "admin" app. Note, however, that there can only be *one* active admin app at given time. – user1643723 Jan 25 '18 at 08:35
  • @user1643723 Please provide more info about it. Thank you for your input! – NoWar Jan 25 '18 at 08:36

1 Answers1

2

The link you posted in the comment says it all.

All you have to do first is to root the devices and then make the your apps System apps using (ES file explorer, Titanium backup, /system/app mover ★ ROOT ★ ...) and then unroot the devices.

Also you can you a parental control app like (Norton Family Parental Control , Net Nanny , Qustodio Parental Control , Mobicip ....) check this link.

As for a legal and secure way you can always contact the company and ask to include your apps as system apps.

Zacktamondo
  • 1,891
  • 3
  • 17
  • 33