我在Android应用程序中遇到短信问题。我需要你的帮助才能收到我发送信息的食谱地址。
示例代码如下。
public void oncall() {
// public void onReceive(Context context, Intent intent) {
// ---get the SMS message passed in---
Bundle bundle = new Bundle(); // intent.getExtras();
SmsMessage[] msgs;
// 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]);
String Mobno = msgs[i].getOriginatingAddress();
// String message = msgs[i].getMessageBody().toString();
output.setText("" + Mobno);
}
// ---display the new SMS message---
// Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
}
}
答案 0 :(得分:1)
Bundle bundle = intent.getExtras();
if (bundle != null)
{
Object[] pdus = (Object[]) bundle.get("pdus");
for (Object pdu : pdus)
{
SmsMessage smsMessage = SmsMessage.createFromPdu((byte[]) pdu);
if(smsMessage.getOriginatingAddress() != null)
{
String num = smsMessage.getOriginatingAddress();
}
}
}