Code example for Location

Methods: getAccuracygetProvidergetTime

0
            // A new location is always better than no location 
            return newLocation;
        } 
 
        // Check whether the new location fix is newer or older 
        long timeDelta = newLocation.getTime() - currentBestLocation.getTime();
        boolean isSignificantlyNewer = timeDelta > TWO_MINUTES;
        boolean isSignificantlyOlder = timeDelta < -TWO_MINUTES;
        boolean isNewer = timeDelta > 0;
 
        // If it's been more than two minutes since the current location, use the new location 
        // because the user has likely moved. 
        if (isSignificantlyNewer) {
            return newLocation;
        // If the new location is more than two minutes older, it must be worse 
        } else if (isSignificantlyOlder) {
            return currentBestLocation;
        } 
 
        // Check whether the new location fix is more or less accurate 
        int accuracyDelta = (int) (newLocation.getAccuracy() - currentBestLocation.getAccuracy());
        boolean isLessAccurate = accuracyDelta > 0;
        boolean isMoreAccurate = accuracyDelta < 0;
        boolean isSignificantlyLessAccurate = accuracyDelta > 200;
 
        // Check if the old and new location are from the same provider 
        boolean isFromSameProvider = isSameProvider(newLocation.getProvider(),
                currentBestLocation.getProvider());
 
        // Determine location quality using a combination of timeliness and accuracy 
        if (isMoreAccurate) {
            return newLocation;