Android初级教程短信防火墙

Posted 杨道龙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android初级教程短信防火墙相关的知识,希望对你有一定的参考价值。

如果你有女神,而且有情敌的话,你看到这篇文章会有一种窃喜的感觉。

需求:对情敌的号码进行拦截,让女神手机永远收不到它的号码。

首先定义一个广播接收者类:

package com.example.smslanjie;

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

public class SmsReceiver extends BroadcastReceiver {

	@Override
	public void onReceive(Context context, Intent intent) {
		Bundle bundle = intent.getExtras();
		Object[] objects = (Object[]) bundle.get("pdus");

		for (Object object : objects) {
			SmsMessage sms = SmsMessage.createFromPdu((byte[]) object);
			if (sms.getOriginatingAddress().equals("138438")) {//在这里配置情敌的号码
				abortBroadcast();
			}
		}

	}

}
去清单文件配置一下:

 <receiver android:name="com.example.smslanjie.SmsReceiver">
            <intent-filter android:priority="1000">
                <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
            </intent-filter>
        </receiver>
因为要对系统短信情况监听,需要配置权限。由于短信拦截性质恶劣,谷歌已经不会让我们通过快捷键得到这个权限了。要手动输入发送短信的权限
<uses-permission android:name="android.permission.RECEIVE_SMS"/>

运行之后,当情敌想给女神发短信的时候,她是收不到情敌的短信的。

以上是关于Android初级教程短信防火墙的主要内容,如果未能解决你的问题,请参考以下文章

无法在片段内查看接收短信

firebase 的短信代码不匹配

片段 getActivity 不起作用

教你如何修改状态栏提示的字体颜色教程(来短信提示字颜色)

Android:导航抽屉片段内的Viewpager

Android发送短信核心代码