电话类错误

时间:2012-11-25 14:08:30

标签: sms broadcastreceiver telephony

我正在从教程中学习,以下代码不起作用:

SmsMessage msg[] = Telephony.Sms.Intents.getMessagesFromIntent(intent);

我认为它不再是框架的一部分,但我还没有找到使用的内容。

我如何获取短信? (这是在BroadcastReceiver的onReceive方法中)

1 个答案:

答案 0 :(得分:0)

我找到了一个解决方案:)

Bundle bundle = intent.getExtras();
    SmsMessage[] msgs = null;
    String str = "";
    if (bundle != null) {
        // ---retrieve the SMS message received---
        Object[] pdus = (Object[]) bundle.get("pdus");
        msgs = new SmsMessage[pdus.length];
        for (int i = 0; i < msgs.length; i++) {
            msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);

            str += msgs[i].getMessageBody().toString();

        }