私は2つのデバイス間でコールと応答を可能にするAndroidアプリケーションを作成しています。現在、sendMultipartTextMessage
を使用して160文字を超えるメッセージを送信しています。しかし、受信したメッセージは、送信したメッセージではありません。sendMultipartTextMessageは文字化けしたメッセージを送信します
String response = "abcd abcd abcd abcdabcd abcd abcd abcd abcd...to 300 chars";
Log.i("response",response);
SmsManager sms = SmsManager.getDefault();
ArrayList<String> parts = sms.divideMessage(response);
for (String part : parts) {
Log.i("part",part);
}
sms.sendTextMessage(sender, null, "This should be normal", null, null);
sms.sendMultipartTextMessage(sender, null, parts, null, null);
Log.i
は期待どおりに動作し、メッセージを部分的に出力します。 sendTextMessage
は、正しいSMSをパートナーのエミュレータに送信します。しかし、sendMultipartTextMessage
によって送信されたパーツはすべて奇妙に翻訳されて戻ってきます。例えば、上記のresponse
は、 "BEGIABEGIABEGIABEGIA ..."として受信されますが、スペースや数字にはいくつかの小さなバリエーションがあります。
sendMultipartTextMessage
はSMSを壊す原因は何ですか?