I have done a GPS application for OpenGTS platform. See this link...
https://www.freelancer.com/projects/Java-Project-Management/Android-phone-GPS-OpenGTS-server.html
We can't hide the application completely from the user. We can hide it from the launcher, but the user can see the app (even uninstall it) from app management screen.
The application can listen the GPS location in the background, still the user can which apps are running in the background.
Have you deployed the openGTS server already and ready to receive location information from the client?
Thanks