天天看點

攔截短信 中斷發送短信

僅供技術研究,莫用于非法用途= =!

1.配置廣播接收者:

<receiver android:name="com.guangwei.sms.receiver.SmsReceiver"   >//需要一個廣播接收者,下面建立
            <intent-filter android:priority="2147483647" >
                <action android:name="android.provider.Telephony.SMS_RECEIVED" />//攔截的廣播
            </intent-filter>
        </receiver>
           

2.建立SmsReceiver繼承自BroadcastReceiver

代碼如下:

public class SmsReceiver extends BroadcastReceiver {

		@Override
		public void onReceive(Context context, Intent intent) {
			Object[] pdus = (Object[]) intent.getExtras().get("pdus");
			for (Object obj : pdus) {
				SmsMessage msg = SmsMessage.createFromPdu((byte[]) obj);
				String address = msg.getOriginatingAddress();
				String body = msg.getMessageBody();
				System.out.println("收到短信了:" + body + ";發信人:" + address);
	
				abortBroadcast();//中斷廣播的傳遞
			}
		  }
		}
           

如果運作時需要權限的話,找到報錯提示的權限加上.

備注:僅供技術研究,莫用于非法用途= =!