Android Multipart SMSes - 单独收到

时间:2011-08-31 02:12:13

标签: android sms-gateway

我正在开发一个SMS网关应用程序,它从客户端应用程序接收sms'es,对其执行一些操作并将数据上传到服务器。

从客户端应用程序,当邮件长度超过160个字符时,我使用sendMultipartTextMessage方法拆分邮件后执行divideMessage。但是,当在SMS网关设备中收到消息时,onReceive的{​​{1}}每次呼叫只获得一个 PDU ,并且正在接收相同短信的不同部分作为不同的短信。

是否有一些设置可以启用接收多部分短信?我正在使用华为u8150 Helios设备作为网关。我已根植设备,如果需要,我可以更改系统设置。

提前致谢。

1 个答案:

答案 0 :(得分:0)

对于那些正在寻找我如何解决这个问题的人来说,这就是我所做的:

<强>发件人:

  • 我没有使用内置的divideMessage,而是创建了自己的divideMessage,它返回ArrayList<String>,其中每个元素都有一个前缀,其长度为&lt; = 150(经验上找到了数字)。
  • 使用内置的ArrayList<String>
  • 发送以上获得的sendMultipartTextMessage条消息

<强>接收器:

  • 获取邮件的前缀并将邮件存储在本地数据库中。
  • 从前缀中查看是否所有其他部分都已到达。如果是,请合并所有部件并进行处理。

注意:前缀中包含的内容以及所有部分的合并方式不在本讨论的范围内。