8

すべての電話番号をデバイスの conatct から E164 形式に変換したい。そこで、以下のオープンソースを使用しました。

libphonenumber

なので、ここのように使いました。

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;
}

そして、このライブラリは 4.0 以降の Android フレームワークで使用されていることを読みました。

Java バージョンはスマートフォンでの実行に最適化されており、Android フレームワーク 4.0 (Ice Cream Sandwich) 以降で使用されています。

これを Android SDK から使用したい。だから私はこれを見つけました。Android SDK は、このPhoneNumberUtilsを提供します 。

そして、機能があります

formatNumberToE164(String phoneNumber, String defaultCountryIso)

使い方はとても簡単です。ただし、この関数の API レベルは 21 です。

だから私の質問は..APIレベル14(ICS)〜21でPhoneNumberUtilsを使用して電話番号をE164に変換するにはどうすればよいですか?

ありがとう。!

4

2 に答える 2