我正在我的应用程序中使用SMS接收器模块,我正在接收带有我的应用程序的短信,如果短信超过160个字符,那么我必须将SMS与其下一部分连接并显示它。目前我正在使用简单的接收器代码。请建议我执行此任务。
答案 0 :(得分:5)
是的,尝试处理多部分消息:
@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
if (bundle != null) {
Object[] pdus = (Object[])bundle.get("pdus");
final SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i = 0; i < pdus.length; i++) {
messages[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
}
StringBuffer content = new StringBuffer();
if (messages.length > 0) {
for (int i = 0; i < messages.length; i++) {
content.append(messages[i].getMessageBody());
}
}
String mySmsText = content.toString();
}
}
}