Well, though Android already has a LocationManager, but questions here is to design an App surrounding it, which can provide a reliable location push to server, which in turn will push this to listeners.
Before one could design this system, below are the points which should be kept in mind.
Android as in device has multiple kind of Location providers namely GPS, FUSED, Network etc, combining output of them and then filtering out the latest will provide more accurate location.
Network will play different role over here, mobile network are not stable in most cases, they drop off often, in case network drop off, does it requires to cache locations obtained so that they can be pushed to server when network is resumed?
Kind of server communication, I would suggest to open a socket between device sharing location and server, this will enable continuous push, and device receiving location can do it via HTTP GET call.
with how many users shared location can be broadcasted? will there be only one or many? does location sharing is only done with selected user or it simply pushes my location to server, and people who I have trusted(friend list) can monitor my location whenever the want(in the later scenario it will require to push location no matter what, I guess that the not part of original requirement though, so it means we need to design something, where pushing and pulling of location can be done only on demand)
Keeping above points in mind, both front end and back end logic can be abstracted.