Android 短信接收

低API版本


建立一个Receiver,并在AndroidManifest中注册,且添加获取短信的权限。

<uses-permission android:name="android.permission.RECEIVE_SMS"/>

   ......

        <receiver android:name=".SMSReceiver">
            <intent-filter>
                <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
            </intent-filter>

 

 

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;

 
public class SMSReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        System.out.println("短信已经接收到了");

        Bundle bundle = intent.getExtras();
        if (bundle == null) {
            return;
        }
        Object[] pdus = (Object[]) bundle.get("pdus");

        for (int i = 0; i < pdus.length; i++) {
            SmsMessage message = SmsMessage.createFromPdu((byte[]) pdus[i]);
            String from = message.getOriginatingAddress();//发送号码
            String content = message.getMessageBody();//发送内容
        }
    }
}



 

posted @ 2016-11-19 23:46  changchou  阅读(216)  评论(0编辑  收藏  举报