A way of preventing location disable in android device? - android

I developed a app in my company to fetch the location of the device of my employees. They are field technicians so I need to know their location to assign different tasks. They are aware of the app installed in their cellphones, and I managed to forbid the uninstallation, but I cant prevent them to turn off the location services. There is a way to do that?
I was thinking in developing a Custom ROM and removing this option, so it always be on but i'am not a Android developer so I don't know if it is possible to do that.
Do you know any project about this? I searched in GitHub but i couldn't find any related really.
If you can help me I would be very grateful.
Thanks.
PS: I also have a Google G suite work profile in the cellphones,
but I didn't find any option to control device settings remotely.

Why can't you just ask them to not turn off their location? Then in your code simply check to see if the user has disabled the GPS and if so report that user to the server, after that you can deal with whoever did this in person.
Also, make sure your users don't cheat by using a FakeGPS app.

Related

Delete unpublished app from devices who have it installed (Android)

We unpublished an Android-app from the Google play-store. We still see that it is installed on 500+ devices. Is there a way to remove it from these devices? If not, is there a way to show people who open the app a message?
If for both questions the answer is no, what would be the way to go?
Br.
Sorry, the answer would be no for the first aspect of the question and a maybe no for the second aspect of the question. The thing is that if you have some kind of connectivity in your app, i.e. some type of way to communicate with your users built by you, then you could use that channel to communicate whatever you desire. If not, well then you can't force them to uninstall the app. They got the app when it was available, and you've got no control over what apps a person has on their phone, even if you made that app.
Best of luck.

Android how to turn Location services on programmatically?

I am building an android app to track my device, is it possible to turn location services on via code?
I have searched for code to do so I have found some and on execution of code it gives some sort of security exceptions, and some threads here on stack overflow were saying that it is impossible to do so, If possible please provide code, if impossible why so?
is it possible to turn location services on via code?
Via Play Services' SettingsApi, yes. Otherwise, no, except perhaps on rooted devices or in a custom malware-friendly ROM.
Actually that opens up a dialog box, i don't want to involve user in it
Then that is not possible.
I have searched for code to do so i have found some and on execution of code it gives some sort of security exceptions
There have been various security flaws in Android that, when exploited, would allow apps to enable GPS silently. AFAIK, all of them are fixed at this point.
if impossible why so?
Privacy.

Is it necessary for network based (cell tower) location to be enabled at install time for an android app using permission ACCESS_COARSE_LOCATION?

OK, this is a little obscure, and my first question on stackoverflow.. I have searched around for an answer to this, but couldn't find anything about this very specific issue. Here goes:
I have created a very simple app which will run as a service in the background, every once in a while it will add latitude & longitude entries to an sqlite database table. It uses course location information (without checking whether it is available).
I have installed the app (from an apk) on my device and never had issues with it. However, I installed it on my mother's droid and kept getting "unexpectedly quit" errors each time I ran it. Realizing that she may not have had cell-tower based location enabled and that my app was not designed with best practices in mind (to have checked for that), I quickly enabled that option in her device settings and re-ran the app. I still got a force quit..so I rebooted.. re-ran.. no dice.
Then, on a weird hunch, I decided to install the app again, but this time the course-location was enabled at install time. To my surprise, the app worked flawlessly after that.
So.. I've not confirmed any of these "theories" but thought the great community at stackoverflow would be my best bet for some ideas:
Somehow, it matters at install time that my app has course-network
enabled..although, that would seem to be a glaring bug and not
likely (because so many apps would have this problem otherwise)
unless somehow installing from market and installing from an apk
will yield different results.
Somehow, my app, written with bad practices, corrupted something in
its installed location and was wiped upon reinstall...
If someone could shed light on this, by sharing some of what they know about these two ideas (or maybe point out an entirely different idea that would explain this behavior) that would be awesome.
ACCESS_COARSE_LOCATION is a must to be able to access to wi-fi aided location info. ACCESS_FINE_LOCATION only gives you GPS location data. If you enable both permissions, you can switch between these two sources.

Detect whenever user opens a foreground app

I am developing an android app. I want to know through an event or any other means in my service, whenever user opens a foreground app. I want to collect my own usage statistics, as I can't find a way to know how many times an app has been used.
Does anyone know of a nice way to do this? Or obtain those statistics, already, if possible?
None of this is supported by the Android SDK.
Have you tried Google Analytics directly?
http://code.google.com/mobile/analytics/docs/android/

GPS hardware requirements and custom download link

I have 2 unrelated questions in one so please bear with me.
I want to know if an Android device absolutely requires a simm card inorder to execute all things Location Based Services.
And ...
I would like friends of mine to download my samlpe app. Is there anyway to put my app online where friends can download and help me test and not put my beta-code on Market place?
For the second question, take a look at this question and answer: Signing an app, but not publishing on Android market
You'd be publishing as an "unknown source" and your friends' would have to change a setting on their phones. ATT doesn't allow this on some phones I think.

Categories

Resources