Я работаю над приложением, которое захватывает входящие/исходящие SMS-сообщения на устройствах Android.Android Eclipse входящий и исходящий смс: формат номера телефона?
Теперь, когда я уже в бета-версии, я заметил на своем SQL-сервере, что входящий SMS-адрес формируется как международный номер, например +32477889977.
Однако исходящие SMS формируются как 0477 88 99 77, как пользователь сохраняет его на своем телефоне.
Мой код для исходящего SMS является
int addressColumn = cursor.getColumnIndex("address"); String number = cursor.getString(addressColumn);
Но во входящем мониторе код
String from = msg[i].getOriginatingAddress();
Теперь вопрос, как я могу сделать icoming SMS, чтобы иметь тот же формат, исходящий, поэтому международный номер, а не номер, хранящийся в телефоне?
Для моего приложения очень важно, чтобы номера телефонов были международными, так как я нацелен на всемирное приложение. Таким образом, локальное формирование не является вариантом.
Мне действительно нужно прочитать номер, который был отправлен по сети.
У кого-нибудь есть опыт? Я искал google в течение нескольких часов, с результатами.
Спасибо!
Мне очень нравится ваш ответ, однако, я всегда получаю сообщение об ошибке: отсутствующие метаданные:/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE. Как вы, кажется, уже работали с lib, вы можете мне помочь? –
Можете ли вы показать пример кода, что вызывает ошибку? –