短信监听2

来源:互联网 发布:单片机驱动无源蜂鸣器 编辑:程序博客网 时间:2024/05/22 12:04
package com.example.receive;import java.text.SimpleDateFormat;import java.util.Date;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.telephony.SmsMessage;/** * 短信监听 * @author  * */public class SMSBroadcastReceiver extends BroadcastReceiver {    private static MessageListener mMessageListener;    public static final String SMS_RECEIVED_ACTION = "android.provider.Telephony.SMS_RECEIVED";public SMSBroadcastReceiver() {        super();    }@Overridepublic void onReceive(Context context, Intent intent) {        if (intent.getAction().equals(SMS_RECEIVED_ACTION)) {            Object[] pdus = (Object[]) intent.getExtras().get("pdus");            for(Object pdu:pdus) {                SmsMessage smsMessage = SmsMessage.createFromPdu((byte [])pdu);                String sender = smsMessage.getDisplayOriginatingAddress();                //短信内容                String content = smsMessage.getDisplayMessageBody();                long date = smsMessage.getTimestampMillis();                Date tiemDate = new Date(date);                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");                String time = simpleDateFormat.format(tiemDate);                //过滤不需要读取的短信的发送号码                if ("+8613450214963".equals(sender)) {                    mMessageListener.onReceived(content);                    abortBroadcast();                }            }        }    }//回调接口    public interface MessageListener {        public void onReceived(String message);    }        public void setOnReceivedMessageListener(MessageListener messageListener) {        this.mMessageListener = messageListener;    }}

原创粉丝点击