@Override
    public void onLocationResult(final LocationResult result) {
        final Location location = result.getLastLocation();
        if (Settings.useLowPowerMode()) {
            location.setProvider(GeoData.LOW_POWER_PROVIDER);
        }
        subject.onNext(new GeoData(location));
    }
Build a new geo data provider object.
<p/>
There is no need to instantiate more than one such object in an application, as observers can be added
at will.

@param context the context used to retrieve the system services
main/src/main/java/cgeo/geocaching/playservices/GoogleLocationProvider.java