这是我用来检索输入短信的短信的代码!:
//---get the SMS message passed in---
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
String str = "";
String strd = "";
String strm = "";
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]);
//if(msgs[i].getOriginatingAddress().equals("9819861968")) {
//---get the sender address/phone number---
str += msgs[i].getOriginatingAddress();
str +=":\n";
strd += msgs[i].getOriginatingAddress();
strd +=":\n";
// }
//---get the message body---
str += msgs[i].getMessageBody().toString();
strm += msgs[i].getMessageBody().toString();
// this.abortBroadcast();
}
现在我想把短信和号码拿出来。 请帮帮我
答案 0 :(得分:0)
我很好地恢复了短信,但不是sms的默认应用程序!
删除this.abortBroadcast();
,这将停止向另一个正在等待此意图的接收者发送通知。
我无法将参数传递给类Service!
您可以通过意图
将参数从Broadcast传递到服务Intent intent = new Intent(context, [Your service].class);
intent.put() // here you can add all the parameter
context.startService(intent);
并在您的服务器onStartCommand
中,您将获得意图数据。