当前位置:编程学习 > wap >>

android 接收短信广播意图 代码如下 不工作啊 在线等待答案

public void onReceive(Context context, Intent intent) {
Log.i(TAG,"onReceive");
Bundle bundle = intent.getExtras();
if(bundle!=null){
Object[] pdus=(Object[]) bundle.get("pdus");

SmsManager smsManager=SmsManager.getDefault();
SmsMessage[] smsMessages = new SmsMessage[pdus.length];
for (int i = 0; i < pdus.length; i++){
smsMessages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
}
for(SmsMessage smsMessage:smsMessages){
final String content = smsMessage.getMessageBody();
final String sender = smsMessage.getOriginatingAddress();
Date date = new Date(smsMessage.getTimestampMillis());
SimpleDateFormat format = new SimpleDateFormat("yyyy-mm-dd HH:mm:ss");
final String time = format.format(date);
String text=sender+":\n"+time+":\n"+content;
smsManager.sendTextMessage("5556", null, text,null, null);
Log.i(TAG,"sms Sent");
}
}
}

配置信息如下:
<uses-sdk android:minSdkVersion="8" />
  <uses-permission android:name="android.permission.RECEIVE_SMS"/>
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.INTERNET"/>

  <application
  android:icon="@drawable/ic_launcher"
  android:label="@string/app_name" >
<reciever android:name=".SmsListener" android:label="sms receiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED"></action>
</intent-filter>
</reciever>
  </application> --------------------编程问答-------------------- 配置到没错,不过你确定给当前手机/模拟器发送短信了吗 ? 八卦下。 --------------------编程问答-------------------- 确定了的 试了一个上午了 都快疯掉了 难道我的模拟器有问题 晚上写一个监听来电的也不工作 --------------------编程问答-------------------- 模拟器总是会出现各种各样的问题,可以试着重新创建一个模拟器试试,

不过开发用真机是最好的。 --------------------编程问答-------------------- 真机还没到手呢。。。。
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,