短信到来监听

 

一、创建一个类使得其继承BroadcastReceiver,并且复写onReceive方法

public class SmsListenerReceiver extends BroadcastReceiver
{
    @Override
    public void onReceive(Context context, Intent intent)
    {
        Toast.makeText(context, "来短信了", Toast.LENGTH_SHORT).show();
        Object[] objs = (Object[]) intent.getExtras().get("pdus");
        for (Object pdu : objs)
        {
            SmsMessage smsMessage = SmsMessage.createFromPdu((byte[]) pdu);
            //获取短信内容
            String body = smsMessage.getMessageBody();
            //获取短信发送号码
            String phone = smsMessage.getOriginatingAddress();
            System.out.println(body + "----------------" + phone);
        }
    }
}

二、在AndroidManifest.xml中监听广播事件并且添加对应的权限

<uses-permission android:name="android.permission.RECEIVE_SMS"/>
...
 <receiver android:name=".SmsListenerReceiver">
            <intent-filter>
                <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
            </intent-filter>
</receiver>

 

posted @ 2017-01-06 15:59  Youxian  阅读(201)  评论(0)    收藏  举报