I have created an android application with device admin rights. It was working properly on my Moto G and many other devices. In Sony Xperia C, the device administrator rights disabled automatically on phone restart. Is anyone come across such issue? and how to fix them?
There may be other ways of doing it, but what springs to mind is a startup script. There's an interesting article here on creating them, which you might use to automatically set admin permissions to your app.
My app had a similar problem on this phone and I think I've worked out what is happening.
If the user moves the app from internal memory to the SD card, the app can lose its Device Administrator privileges when the SD card is unmounted. This would likely happen when the phone is restarted.
According the Android documentation, if you don't specify an installLocation in the manifest, an app should not be moveable. I think some phones break this rule and allow an app to be moved anyway.
Related
I have a custom android tablet and we have created an application which is used for home automation.I have installed the application in it and it works fine. I got the comments from the client saying that the tablet restarts by itself at night. I tried to catch the log by connecting it to eclipse but it didnt happend here. Will the tablet restart by itself under any circumstances ? , The tablet is a samsung ARM with 512mb ram and 4gb sdcard in it which runs on android version 2.2.
You have not provided any code, which leads me to assume the following. Unless you have the permission of PowerManager, you app has no control over the device's off/on state.
You also mentioned, on testing, you were not able to pinpoint the issue that the client talked about. This is very important information, and it helps strengthen my conclusion. Again, if the above criterion is correct (you don't have powermanager) then, it could be the clients tablet is just messed up...
The reebooting is actually a common problem:
http://forums.androidcentral.com/samsung-galaxy-tab-pro-8-4/453390-why-my-tablet-randomly-rebooting-resetting.html
Here, user B. Diddy states:
It's hard to say. Random reboots can happen because of problems with
the firmware, but can also be due to some app you installed that is
making the system unstable, or perhaps some bad bit of data that is in
the system cache. A corrupt SD card can also cause problems. Here are
some things you can try:
Unmount your SD card in Settings>Storage, remove it, and reboot. Use the tablet for a while (like a few days) without the SD card and
see if the random reboots recur. If they don't, plug it back in again,
and see if the reboots start again.
Boot into Safe Mode, which temporarily disables all 3rd party apps: Safe mode: Samsung Galaxy Tab 4 | T-Mobile Support. (I couldn't find
steps specifically for the Tab Pro, so I'm assuming the steps for the
Tab 4 are the same.) This might not be an effective troubleshooting
method if the random reboots don't occur very often, because it's hard
to expect anyone to use their tablet for several days in Safe Mode,
thus being unable to access any of the 3rd party apps you installed.
Boot into Recovery Mode and wipe the cache partition, which doesn't erase any personal data. Follow the steps in this video, and make sure
you select Wipe Cache Partition, and not Wipe Data/Factory Reset.
So, let me know if your app uses the PowerManager permission. If it doesn't you're good to go, and it is probably a faulty tablet.
Ruchir
hi i am working to create an application that could'nt be deleted or uninstalled even after hard reset or formatting the device but that is failed in such rooting process ,
Now i want a code to install an app automatically from sd card after a hard reset or reboot of an android device ,
The application is to find a lost mobile so that even the lost device is resetted or formatted
my app helps a user to find his mobile
Thank you..
i am working to create an application that could'nt be deleted or uninstalled even after hard reset or formatting the device but that is failed in such rooting process
Build your own ROM mod that has your app pre-installed.
Now i want a code to install an app automatically from sd card after a hard reset or reboot of an android device
That is not possible, fortunately, for obvious security reasons.
AFAIK, There are 2 kinds of android app: System app and User app. If you want to prevent uninstalling from your app, it must be an system app.
If you are developing app for rooted phone (and your phone is rooted also), try to copy *.apk to /system/app then restart your phone.
Hope this helps.
I am getting reports from beta testers that after installing my .apk file their device is rebooting. After reboot the application operates as normal. Reboot after installation is not part of the desired/expected behavior, and itself sounds like a security breach.
Can anyone speculate as to why Android might reboot after an .apk install?
UPDATE:
One of the devices was an LG Ally, the other was a Samsung Galaxy Note
Are your Beta users using a rooted device? Do they have some kind of security app like "Lookout" installed on their device?
I'd suggest that you make your app create a trace log on the sdcard, that you'd get your beta tester to email to you.
Of course, this debugging process would be easier if someone loaned you the same model of the device your beta user is using.
No matter what your app should never be able to crash the operating system. A lot of this can depend on the device and manufacturer. For example, I noticed that when using a certain app to stream music on 2.3.x on the Droid X, the device would sometimes restart. I could not fix this issue myself but instead had to wait until a fix was provided by Motorola (which it eventually was). I would see if you can find a common occurrence on certain devices or manufacturers then do some researching on their reported bugs page. Also, what type of application is this (game/media/utility?)
We have a tablet app that we're deploying at retail outlets. It currently self updates late at night but after it does it is no longer the default "home" application and the user is given the choice to start our app or the default launcher again. We'd like to always have our app be the default home application even after updates. Is there a way to do this on a rooted device?
This is an ICS based device so the addPreferredActivity doesn't seem to work as I cannot get the android.permission.SET_PREFERRED_APPLICATIONS permission even though the device is rooted. If there is a way around that, I think I could get this done..
Is there a way to do this on a rooted device?
The simplest solution is the one you rejected from the comment: remove the stock launcher and make yours be the only launcher.
This is an ICS based device so the addPreferredActivity doesn't seem to work as I cannot get the android.permission.SET_PREFERRED_APPLICATIONS permission even though the device is rooted.
Root, by itself, has nothing to do with permissions. In this case, SET_PREFERRED_APPLICATIONS is a signature-level permission, meaning that your app would have to be signed by the same signing key as the firmware, which will not be possible unless you roll your own modded ROM.
If I am reading the Android source code correctly, the results of addPreferredActivity() wind up in /data/system/packages.xml, in a <preferred-activities> element. Play around with modifying that file very carefully and see if that will get you what you want.
Sometimes it happens that some application cant work properly in rooted device i also had same kind of problem in my device (was also Rooted).so i had only one way remain that to install os again so i did it with use of some software (like superoneclick) and with use of it i unroot my device and reinstall os. then the application works perfectly so may be u should also unroot your device if its possible.
Just that, I like to know is always all the preinstalled apps are with the uninstall button disable in Android.
If I am reading your question correctly, some of the pre-installed apps can't be uninstalled without rooting your phone using cyanogenmod or rooting your phone.
Some pre-installed applications can be uninstalled. For example in Android 4 (ICS) you can go to Settings -> Apps and select the "All" tab. There you can uninstall some of the preinstalled software.
Root the phone, put the APK into the /system/app folder and then unroot the phone. This is possible on a Droid 4 at least in theory. Not sure about other hardware models. If you can root and unroot the phones it should work.
This depends on the Device manufacturer. They have the possibility to install the app in any way they like before they freeze the image and flash it to the hardware in the factory.
For example some of the Branded apps might be installed under system privileges, but some of the more "friendly recommendation" apps might be free to uninstall.
From what i understand in ics apps in usolder can be uninsfreeled, apps in system folder instead of uninstall the button reads disable. Except for only s slight few only, these apps are reQuired by the os for the user to be able to"enable" a disable App, so i think i the app needs to be signed by the room cooker our needs top have a intent in the manifest like a launcher or home app (since if you disable your home launcher you bricked your phone, so you can't disable it, but if you give your app a intent label of copied from the Android source launcher then the phone will think it's a launcher, and not let you disable it, you will prob have to set the home launcher back to be default or Android will ask you witch launcher too use Every time user hits the home button, i was looking for the same answer found this page
Android 4.0 Api to Disable Apk Witch gave me the idea, currently thus reply is closest I've come to impinging the idea, i well be trying it soon, if you beat me to it, let me know tour results, and i well do the same.
And to install a app in /system/app a uninstall.zip won't do it, you need too root the phone, install the app, xfer it to system (i use system/app mover available in the play store free, the too secure ot Unindtsll app mover, and unroot, any way good luck.
P.s. I'm Not a Dev, i just understand the format format of the app language, and can c effectivly search for info, so please no code questions. i can't answer them, but google can.