首页 > 代码库 > 如何获取短信内容

如何获取短信内容

如何获取短信的内容?
1.编写一个广播接收器类,该类去集成BroadCastReceiver
在onReceive()方法中处理广播
关键的Java代码:

 1 public void onReceive(Context context,Intent intent){ 2 Bundle bundle=intent.getExtras(); 3 if(bundle!=null){ 4 //获得收到的数据 5 Object[] objArray=(Object[])bundle.get("pdus"); 6 //定义封装短信内容的smsMessage对象数组 7 SmsMessage[] messages=new SmsMessage[objArray.length]; 8 //循环处理收到的所有短信 9 for(int i=0;i<objArray.length;i++){10     //将每条短信数据装换成SmsMessage对象11 messages[i]=SmsMessage.createFromPdu((byte[])objArray[i]);12 //获取发送短信的电话号码和短信内容13 String s="手机号:"+messages[i].getOriginatingAddress()+"\n";14 s ="短信内容:"+message[i].getDisplayMessageBody();15 //显示发送短信的电话号码和短信内容16 Toast.makeText(context,s,Toast.LENGTH_LONG).show();17 }18 }19 }

2.然后再清单文件中定义广播接收器类时添加短信广播Action即可。
<receiver android:name=".shortMessageReceiver"
android:enabled="true">
<intent-filter>
<action android:name"android.provider.Telephony.SMS_RECEIVED"/>
<intent-filter>
</receiver>

如何获取短信内容