The problem with the existing code is that once you have called a getLocation, you will only get that location for subsequent calls. This PR makes sure you get a current location. Yes, you can observe, but maybe you don't want to do that  (to conserve battery for instance), but occasionally get an updated location event. 