Finally I found how this thing work
First ContactsProvider add this value when calling DefaultCallLogInsertionHelper.addComputedValues
see here
@Override
public void addComputedValues(ContentValues values) {
// Insert the current country code, so we know the country the number belongs to.
String countryIso = getCurrentCountryIso();
values.put(Calls.COUNTRY_ISO, countryIso);
// Insert the geocoded location, so that we do not need to compute it on the fly.
values.put(Calls.GEOCODED_LOCATION,
getGeocodedLocationFor(values.getAsString(Calls.NUMBER), countryIso));
}
so code you see
final String countryIso = callCursor.getString(COUNTRY_ISO_COLUMN_INDEX);
final String geocode = callCursor.getString(GEOCODED_LOCATION_COLUMN_INDEX);
is actually reading from saved data
So, real data are from PhoneNumberOfflineGeocoder which you can find here https://github.com/CyanogenMod/android_external_libphonenumber/blob/ics/java/src/com/android/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
That is something called libphonenumber