我正在开发一个1.6及以上的Android应用程序,通过端口发送和接收SMS消息。 要发送短信,我使用的方法是:
SmsManager.sendDataMessage(String destinationAddress,String scAddress,short destinationPort,byte [] data,PendingIntent sentIntent,PendingIntent deliveryIntent)
但是发现byte []数据应该只包含消息体。似乎没有可用于发送多部分数据消息的方法,也没有办法修改SMS标头(UDH)来指定消息,例如,1中的1。
当我尝试从通过指定端口收到的SMS中提取消息计数信息时,我在接收端遇到类似的问题。我使用SMSMessage.getPdu()来提取包含消息头和消息体的byte [],但无法从头数据中提取特定信息。 有谁知道Android平台用于短信头的格式?
答案 0 :(得分:-1)
您需要查看3GPP SMS规范。对我来说,我从第30和第31个字节获得了目标端口信息。