私は、Android デバイスで送受信される SMS をキャプチャするアプリケーションに取り組んでいます。
既にベータ版を使用しているため、SQL サーバーで、着信 SMS アドレスが +32477889977 のような国際番号としてフォーマットされていることに気付きました。
ただし、発信 SMS は、ユーザーが電話に保存する方法と同様に、0477 88 99 77 のようにフォーマットされます。
送信 SMS のコードは
int addressColumn = cursor.getColumnIndex("address");
String number = cursor.getString(addressColumn);
しかし、着信モニターでは、コードは
String from = msg[i].getOriginatingAddress();
ここで問題は、着信 SMS を発信と同じ形式、つまり電話に保存されている番号ではなく国際番号にする方法です。
世界中のアプリケーションを対象としているため、電話番号が国際的であることはアプリケーションにとって重要です。したがって、ローカルの書式設定はオプションではありません。ネットワークから送信された番号を読み取る必要があります。