Fix dynamic location update in #5 by checking location.getProvider() if its 'gps'