バイナリ SMS を送信する midlet アプリケーションがあります。SMS の送信を担当するコードの一部 (いくつかのチュートリアルからコピー):
MessageConnection smsConnection =
(MessageConnection)Connector.open(destAddress);
//Create binary message
BinaryMessage binaryMSG = (BinaryMessage)smsConnection.newMessage(
MessageConnection.BINARY_MESSAGE);
//Setting destination add
binaryMSG.setAddress(destAddress);
//Add payload data
binaryMSG.setPayloadData(data);
//Now send the message
smsConnection.send(binaryMSG);
smsConnection.close();
nokia e51、e52、および 3120c 電話でテストしましたが、すべて問題ないようでした。次に、受信したデータを確認しました。e52 および 3120c 電話から受信したデータは問題ありませんでしたが、e51 からのデータは破損していました。一部のバイト値が 0x1a 値に変更されました。これらの変更されたバイトはすべて、0x83 から 0x9e の間の値を持っていました。その理由は何か知っている人はいますか?
編集: SMSC が処理する前に SMS PDU を確認したいのですが、送信している SMS の PDU を確認できる可能性はありますか? MessageConnection クラスと Message インターフェイスの機能はかなり貧弱なようです。