Formatar número de telefone para o formato E164 no Android

Quero converter todos os números de telefone de conatct no dispositivo para o formato E164. Então, eu usei o código-fonte abaixo.

libphonenumber

Então eu usei como aqui.

Phonenumber.PhoneNumber formattedNumber = null;
String formatted = null;

try {
    formattedNumber = phoneUtil.parse(phoneNumber, "KR");
    formatted = phoneUtil.format(formattedNumber,PhoneNumberUtil.PhoneNumberFormat.E164);

    if (StringUtils.isEmpty(formatted) == false && formatted.length() > 0 && StringUtils.isEmpty(name) == false && name.length() > 0) {
        listName.add(name);
        listPhoneNumber.add(formatted);
    }
} catch (NumberParseException e) {
    continue;
}

E eu li que esta biblioteca é usada pela estrutura Android desde 4.0.

A versão Java é otimizada para execução em smartphones e é usada pela estrutura Android desde 4.0 (Ice Cream Sandwich).

Eu quero usar isso no Android SDK. Então eu encontrei isso. O Android SDK fornece issoPhoneNumberUtils .

E existe uma função

formatNumberToE164 (String phoneNumber, String defaultCountryIso)

É realmente fácil de usar. mas o nível da API dessa função é 21.

Então, minha pergunta é ... Como posso usar PhoneNumberUtils para converter o número de telefone em E164 no nível API 14 (ICS) ~ 21?

Obrigado.!

questionAnswers(1)

yourAnswerToTheQuestion