An app which has complete control of the device - android

I would like to create an app which is preinstalled on a device and has complete control of it (no way to exit it), this is for devices handed out for a specific purpose. It will have some pages/navigation as well as the ability to run certain whitelisted apps.
Is there anything out there helping with this, or would this kind of an app have to be a custom build of Android? Thanks.

To have complete control over the device you would need a custom operating system. I don't think it is possible to do what you are asking for with an app

The way was in progress to implement this was with a custom compiled OS that signed a launcher with the key provided by the hardware vendor.
You can certainly fake most of this with your own launcher but to get it to be the system default launcher you need to have the vendor key I believe.

There are apps that donot do exactly what you want but achieve something similar to that. App Lock is one such app. It blocks the specific app view from the user until he enters the pin. The user will have to set Device administrator properties for such an app usually but if you are planning it as preinstalled then that can also be handled.

Related

What is the right way to deploy a customized Android end user device with an App (install, update, lock task mode)?

I am planning to develop a Flutter App which will be installed on a dedicated device which I want to sell to customers (B2C). This device will be used only with the developed app and thus represents a kind of customized end user device, which hasn't to provide any other functions. For example, the user should see a customized boot screen and then my app should open. The user should not be able to access the Android system apps (Config, System Bars, Home Screen, Home Button/Navigation).
In doing so, I have the following problems:
What options do I have to update the app automatically?
I have read that there should be something like the Managed Google Play Store, but would this even be the right use case for this or should I rather write my own service which is responsible for updating my app?
How can I make sure that the user only uses my app and not other apps or the system menu? The following link (https://developer.android.com/work/dpc/dedicated-devices) describes how I put certain apps into "Lock Task Mode", but that is mentioned more in the context of Enterprise Mobility Management, not for customized consumer devices. Is this even the right way to go for my requirement, or should I rather look into the AOSP project (https://source.android.com/)? That would certainly add an additional hurdle. My preference would be to be able to use any Android tablet for my App.
In order to sell my dedicated device, I will need to customize/install a variety of devices, which begs the question of how do I effectively solve this? Do I need to flash the devices to do this? Is there possibly another effective method such as customized installation scripts via adb? This question is certainly closely related to the previous question.

Android Wear App full screen/locked

I am working on a proof of concept for a personalized application, and I was wondering if the following was possible in Android Wear (1.0 or 2.0). Basically I would like to have an app that will always sit on top of everything in the watch, and there would be no way to exit it. This will not be a public app, and only will be used by certain people that "shouldn't" have access to anything but that app. I've seen some Kiosk mode articles but never found any examples of how those apps work, and if they do what I'm looking for. One way I was thinking is to create an Android Wear launcher that would replace the regular launcher, and just not give access to any other functions of the watch except for what I want the user to be able to do. I only found one launcher application on play store, so I am assuming it's doable but my main concern is that I need to be able to "lock" the app. Does anyone have any experience with doing something similar?
I would have a function that exits the app by typing a password - kind of like parental control, but that's next step. The most important feature is to be able to lock the user where they can only interact with the app provided by us.
All of this should ideally be done on any Wear application without rooting or writing custom ROM, but if that's the only way, I'd like to hear some options.
Thanks!

Create a code that installs an application and runs only that application

I need a device that runs only one custom application and does not allow the Users to access any other features. Building a complete device would involve a lot of time and money for sure(only if this can be done with android). This can usually done for each android device seperately. It could be better if there could be simply a piece of code that can be simply executed on the device that installs the application and at the same time restricts the device as per requirement.
Could someone advice me a way to implement in the Android devices. Is it something possible :(
Would also like to know if the same is possible with iOS..
Thanks..
If you want to be absolutely sure that users cannot do anything but accessing one specific app, the only way to do this is to create a custom ROM that allows to install your app only.

Develop android application with device ROM customized

Currently I am developing an android application. This application should load when the device boot and it should restrict all the inbuilt & other applications. I have searched in forums as it can be possible by make our ROM customized. But this process can be do manually by ourselves. I want to make this by coding. Or is there any other way to make my application default?
If you want your app to be default - yes, you haven only way to build your own custom android.
Only what you can do on your default android system is to automatically load your app after OS have loaded.
You're not stating precisely what you intend to do. The words restrict and default can mean a lot of things.
Despite what dilix writes, one way you might succeed with what you want is if you make your app a launcher. A launcher plays an interesting role in the system.
However, you cannot force anyone to really use it. But that wouldn't be possible either way, right? Unless you talk to device manufacturers.

how to hide other application from my application from list of apps android

Could anybody please help me find a way to hide other application from my application. I'm retrieving a list of apps installed with check boxes and when I check some apps, those should be hidden from the application list in emulator. I've searched in google but I couldn't find it. I am waiting for help....
Thanks,
You could create a custom launcher, in which you control which apps are shown (within your own launcher) by creating a list of apps within your own launcher.
You will not be able to hide apps from the general system. Android uses the Role\Group security model from Linux, and you (an app running within the Android OS) wouldn't have the security permissions to hide apps from the user on a system level - to have that access right, you would need to be root.
Bottom line, you cannot create an app to hide other apps from the Android System (or the user). This is due to security restrictions (which make sense - malicious apps would be able to hide themselves from the user, which would be a bad thing).
If you wanted to do this in the emulator - you could actually make the changes in the source code of Android (which you can download and modify to your pleasure). This would work within an emulator only (you wouldn't be able to install that on a real phone without hacking, or rooting).
You cannot do that without hacking platform (or rooting it).

Categories

Resources