我有一个广播接收器SMSApp,它的onReceive会从 Intent 中读取bundleExtras。在这里,我如何从bundleExtras中读取电话号码?
if(intent.getAction().equals(SMS_RECEIVED))
{
Bundle bundleExtras = intent.getExtras();
if (bundleExtras != null)
{
}
}
最佳答案
Bundle bundle = intent.getExtras();
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]);
}
现在,
messages[0].getOriginatingAddress()
是地址,messages[0].getMessageBody()
是消息正文。关于Android:如何从收到的短信中获取电话号码?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9378328/