ユーザーがアドレス帳から電話番号を選択できるようにしています。番号は常に国際形式である必要がありますが、連絡先に国コードなしでローカル番号を保存することがあります (例: +1-555-555-5555 ではなく 555-555-5555)。
ローカル番号が意味する国コードを見つけて、手動で追加できる簡単な方法はありますか?
ユーザーがアドレス帳から電話番号を選択できるようにしています。番号は常に国際形式である必要がありますが、連絡先に国コードなしでローカル番号を保存することがあります (例: +1-555-555-5555 ではなく 555-555-5555)。
ローカル番号が意味する国コードを見つけて、手動で追加できる簡単な方法はありますか?
これはあなたが必要とするものです https://code.google.com/p/libphonenumber/
String numberString = "044 668 18 00"
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
try {
PhoneNumber numberProto = phoneUtil.parse(numberString, "BH"); // Where BH is the user's iso country code
String finalNumber = phoneUtil.format(numberProto, PhoneNumberFormat.E164);
} catch (NumberParseException e) {
System.err.println("NumberParseException was thrown: " + e.toString());
}