public static boolean canBlockNumber(Context context, String number, String countryIso) { final String normalizedNumber = PhoneNumberUtils.formatNumberToE164(number, countryIso); return !TextUtils.isEmpty(normalizedNumber) && !PhoneNumberUtils.isEmergencyNumber(normalizedNumber); }
@Override public void onUnblockedNumber( String number, String countryIso) { String cacheKey = PhoneNumberUtils.formatNumberToE164(number, countryIso); if (!TextUtils.isEmpty(cacheKey)) { mBlockedNumberCache.put(cacheKey, false); notifyDataSetChanged(); } }
@Override public void onBlockedNumber(String number,String countryIso) { String cacheKey = PhoneNumberUtils.formatNumberToE164(number, countryIso); if (!TextUtils.isEmpty(cacheKey)) { mBlockedNumberCache.put(cacheKey, true); notifyDataSetChanged(); } }
/** * Normalizes the specified phone number to its E.164 representation, if supported by the platform * * @param context a context reference * @param phoneNumber the phone number to normalize * @return the normalized phone number */ @SuppressLint("NewApi") public static String normalizePhoneNumber(final Context context, final String phoneNumber) { if (Build.VERSION.SDK_INT >= 21) { final String countryIso2 = DeviceInfo.getCountryISO2(context); if (countryIso2 != null) { final String formatted = PhoneNumberUtils.formatNumberToE164(phoneNumber, countryIso2.toUpperCase(Locale.US)); if (formatted != null) { return formatted; } } } return phoneNumber; }
final String normalizedNumber = PhoneNumberUtils.formatNumberToE164(number, countryIso); if (TextUtils.isEmpty(normalizedNumber)) { return false;
private String formatNumber(String unformattedNumber){ TelephonyManager tm = (TelephonyManager)getActivity().getSystemService(Context.TELEPHONY_SERVICE); String countryCode = "us";//tm.getSimCountryIso(); String formattedNumber; if(Build.VERSION.SDK_INT >= 21) { formattedNumber = PhoneNumberUtils.formatNumberToE164(unformattedNumber, countryCode); } else { formattedNumber = PhoneNumberUtils.formatNumber(unformattedNumber); } if(formattedNumber == null){ formattedNumber = unformattedNumber.replaceAll("[-,+]",""); } return formattedNumber; } }
/** * Creates a new {@link ContentValues} suitable for inserting in the filtered number table. * * @param number The unformatted number to insert. * @param e164Number (optional) The number to insert formatted to E164 standard. * @param countryIso (optional) The country iso to use to format the number. * @return The ContentValues to insert. * @throws NullPointerException If number is null. */ public static ContentValues newBlockNumberContentValues(String number, @Nullable String e164Number, @Nullable String countryIso) { ContentValues contentValues = new ContentValues(); contentValues.put(getOriginalNumberColumnName(), Preconditions.checkNotNull(number)); if (!useNewFiltering()) { if (e164Number == null) { e164Number = PhoneNumberUtils.formatNumberToE164(number, countryIso); } contentValues.put(getE164NumberColumnName(), e164Number); contentValues.put(getCountryIsoColumnName(), countryIso); contentValues.put(getTypeColumnName(), FilteredNumberTypes.BLOCKED_NUMBER); contentValues.put(getSourceColumnName(), FilteredNumberSources.USER); } return contentValues; }
contactInfo.formattedNumber = PhoneNumberUtils.formatNumber(number, countryIso); contactInfo.normalizedNumber = PhoneNumberUtils.formatNumberToE164(number, countryIso);
final String e164Number = PhoneNumberUtils.formatNumberToE164(number, countryIso); if (TextUtils.isEmpty(e164Number)) { return false;
updatedInfo.number = number; updatedInfo.formattedNumber = formatPhoneNumber(number, null, countryIso); updatedInfo.normalizedNumber = PhoneNumberUtils.formatNumberToE164( number, countryIso); updatedInfo.lookupUri = createTemporaryContactUri(updatedInfo.formattedNumber);