Prevent app to uninstall like system app android - android

We are developing one app that will be pre-installed on device manufacture time. seems like a bloatware app.
we want to prevent our app to uninstall by user like Contacts and other pre-installed app.
i searched a lot on google. but getting the same technique like using device rooting.
i also tried by using this app. but when i am clicking on any app to move to "System/apps", it gives me message
"/system/app mover has been granted superuser permission"
and then i am getting Error i.e
"Error: cp: applet not found"
with Ok Option.
So i tried by using "Es File Explorer" to move app from "data/app/" to "System/app/" its also moving app to "System/app" but when i am going through App Manager, it allow me to "Uninstall". but i want to disable "Uninstall button" like other pre-installed app act.
i tried the same method.
Rooted my device.
Moved my app from data/app/ to system/app/
set permission rw- r-- r-- and reboot.
Still i am able to uninstall my app. Can anyone please help me to fix this issue.

Related

Can I launch a specific app when android device get physically connected to a specific usb device?

Can I "register" a (already installed) specific app to be launched when android device get physically connected to a specific usb device ?
Eg.
I connect a keyboard (of a certain brand or with a special USBid/class) and it automatically launch a text editor app
I connect an USB soundcard and it launches an audio app.
And "better", is there an autolaunch on Android ? I plug a keyboard+storage device to my smartphone and Android will ask me if I want to install the apk from the storage (or download it from predefined url)
Obviously for security reasons I understand installing the app from the storage will need confirmation by user. But, once the app has been "registered" would it be possible to launch the app automatically without having a confirmation screen ?
I know I could get USB info with android.hardware.usb.usbdevice. My question is more about how I can tell Android to launch this app rather than another when usb device is connected.
I think you could register your app to receive a system broadcast like USB_ACCESSORY_ATTACHED and make the logic to launch your app when this happens.
Check https://developer.android.com/guide/components/broadcasts
https://developer.android.com/reference/android/hardware/usb/UsbManager.html#ACTION_USB_DEVICE_ATTACHED

disabling Privacy, Device permissions and device access

I've recently created an app which is basically a webview component that displays a website, when I want to install the app on an android phone (havent tried on iOS yet) the privacy setting and device permissions/access you have to agree with are far more than what the app requires, if it is a simple webview app it should not need access to anything other than full network access, however other requirements that you have to agree with before installing the app are "read contacts, read texts, make calls, send texts... etc." it pretty much requires all the possible device permissions that there is, and so some people might not want to install the app due to this reason. Is there any way I can cancel or disable the device access/permissions that the app requires?

Android Marketplace - Installing apps remotely show as Installed even if phone is off?

Someone stole my phone last night in a matter of a few minutes. A friend mentioned the Android app "Plan B" which can be remotely installed from the Google website. My question is regarding the actual state of being installed.
After clicking 'Install', it reports the app as 'Installed', but I'm assuming this is not a true state of things as it took only a page load to report it as installed. The question is:
After clicking install on the Google Play website, if the phone is off or otherwise unavailable, will it still report the app as installed?
Also, going in to 'My Orders' from the cogwheel in the top-right corner, it shows the app install status as 'Complete'. Again, I don't know if these are real or assumed statuses.
The easy way to answer these questions is to turn off your phone, install any app from the Google Play website, and check to see if the app is marked as both "installed" and "complete" under the order area.
I just tested this situation with my Nexus 4. I placed my Nexus 4 into the airplane mode (which has zero connectivity) and when to the playstore websited and install a random app. It said "Installed".
I then turned airplane mode off and then the new app instantly started installing as soon as my device connected to wifi.
Most android phones keep a very tight connection to the playstore. So as soon as the phone is turn on and connected to the Internet, it should auto-install right away. The only issue I can think of is that if your change your playstore settings to not autoupdate. Do you know if you enable that setting?
tldr;
Yes it lies to you. But As soon as the device is online and has internet connection it technically should install.

perform a task when any application installed on device is opened?

I wish to filter the applications installed on the device so that the person, using that device can't open any app rather than few basic apps... or i wish when he/she opens any application password will be asked......
That somewhat of a more low level task. I guess you will have to either root the device, or build your own System image and install that on your device.
By reading 'Logcat' logs in the background we can detect other applications launch; as working of any lock application.

How can we install/Push the Android application over proprietary Wifi Network?

We are developing an android application which is to be installed on the ~500 devices in the premises.How can I do it centrally at one go via wifi network.
Thrice every quarter, the following is required
The application (upgradeable version) needs to be installed.
Uninstalled (older version) frequently.
I know on device we can set "allow unknown sources" by default. But is it possible to push/install the application (like the ICS push on the Ginger Bread Mobile Phone recently)
I have gone through this post but no precise answer.
For the initial install, you can't. You have no choice but to manually install the app by one means or another (e.g., download it via a link from your intranet).
For updates, the app can check for an available update, download it, and then initiate an install when the user is ready. You cannot forcibly upgrade the app though -- the user will have to be involved.
You also cannot "installed (upgradable version)-uninstalled (older version)" except by hand -- once the app is uninstalled, it has no way to trigger installation of some other app. Also, by uninstalling, you lose all your data, which is generally frowned upon. Upgrading in place is the more typical approach.
Unless you have a custom version of Android on a device you cannot send an APK to the device and have it install automatically without using the Android Market.
However you can deploy applications to an individual device without user interaction using ADB . Using the following command:
adb install /Path/ToFile/ApkFile.apk
Additionally you can put the apk on the phone and then install it using the package manager.

Categories

Resources