如何通过sendDataMessage()在一个SMS中发送140个字节

时间:2014-04-20 10:02:59

标签: java android sms smsmanager

我在不同的论坛上读过,我们可以在一条短信中发送160(7位)字符和140(8位)字节。

我想在一条短信中发送140字节的数据。 我可以成功发送最多133个字节但不超过133个字节,可以任何一个指南为什么我无法通过smsManager.sendDataMessage在一个短信中发送140字节的8位数据

以下是我的代码。

      int MAX_SMS_MESSAGE_LENGTH = 140;
      byte[] bArray = new byte [MAX_SMS_MESSAGE_LENGTH];
      for(int i=0;i<MAX_SMS_MESSAGE_LENGTH;i++)
      {
           bArray[i] = (byte)i;
      }
      PendingIntent sent = this.createPendingResult(SENT, new Intent(), PendingIntent.FLAG_UPDATE_CURRENT);
      String messageText = _message.getText().toString();

     SmsManager smsManager = SmsManager.getDefault();
     smsManager.sendDataMessage(_phoneNumber.getText().toString(), null, SMS_PORT, bArray, sent, null);

感谢期待,

此致

AK

1 个答案:

答案 0 :(得分:1)

140字节的一部分保留给用户数据头(UDH),通常为7字节。更多信息可以在here.

找到