CallerInfo query: Turn on "geo description" lookup for unknown numbers
With the latest version of the external/libphonenumber library <https://android-git.corp.google.com/g/117190> we now have real data for the PhoneNumberOfflineGeocoder.getDescriptionForNumber() feature. So enable it in the CallerInfo query. This means that the incoming call UI will now show a geo description like "California" or "Maryland" (along with the number) for unknown incoming numbers. I also needed to work around an issue with the latest phonenumber library: The new library apparently requires countryIso to be uppercase (e.g. "US") but the CountryDetector.detectCountry().getCountryIso() call currently returns "us", which causes PhoneNumberUtil.parse() to fail. (This also broke some ContactsProvider tests too.) So force the countryIso to uppercase for now. TESTED (on Crespo): - Incoming calls from an unknown number: ==> State name is now displayed. - Incoming calls from a number that matches a contact: ==> no change in behavior Bug: 4595580 Change-Id: I03126e1eee99d428e76bbbad5b3856be3874f549
This commit is contained in:
@@ -526,8 +526,20 @@ public class CallerInfo {
|
||||
+ countryIso);
|
||||
}
|
||||
|
||||
// Temp workaround: The current libphonenumber library requires
|
||||
// the countryIso to be uppercase (e.g. "US") but the
|
||||
// detector.detectCountry().getCountryIso() call currently returns
|
||||
// "us". Passing "us" to util.parse() will just result in a
|
||||
// NumberParseException.
|
||||
// So force the countryIso to uppercase for now.
|
||||
// TODO: remove this once getCountryIso() is fixed to always
|
||||
// return uppercase.
|
||||
countryIso = countryIso.toUpperCase();
|
||||
|
||||
PhoneNumber pn = null;
|
||||
try {
|
||||
if (VDBG) Log.v(TAG, "parsing '" + number
|
||||
+ "' for countryIso '" + countryIso + "'...");
|
||||
pn = util.parse(number, countryIso);
|
||||
if (VDBG) Log.v(TAG, "- parsed number: " + pn);
|
||||
} catch (NumberParseException e) {
|
||||
|
||||
@@ -55,7 +55,7 @@ public class CallerInfoAsyncQuery {
|
||||
// PhoneNumberOfflineGeocoder to look up a "geo description"?
|
||||
// (TODO: This could become a flag in config.xml if it ever needs to be
|
||||
// configured on a per-product basis.)
|
||||
private static final boolean ENABLE_UNKNOWN_NUMBER_GEO_DESCRIPTION = false;
|
||||
private static final boolean ENABLE_UNKNOWN_NUMBER_GEO_DESCRIPTION = true;
|
||||
|
||||
/**
|
||||
* Interface for a CallerInfoAsyncQueryHandler result return.
|
||||
|
||||
Reference in New Issue
Block a user