android去掉短信提示,Android 接收短信并屏蔽notification 提示

此博客介绍了一个Android BroadcastReceiver实现,用于接收短信并检测是否来自10086。它会过滤掉10086的短信,并解析短信内容,对每条短信进行处理。通过关键字匹配和字符串操作,展示了如何在接收到短信后执行特定操作。
摘要由CSDN通过智能技术生成

package com.iss.test;

import android.content.BroadcastReceiver;

import android.content.Context;

import android.content.Intent;

import android.os.Bundle;

import android.telephony.SmsMessage;

import android.util.Log;

public class Smsreceiveandmask extends BroadcastReceiver

{

private String TAG = "smsreceiveandmask";

@Override

public void onReceive(Context context, Intent intent) {

Log.v(TAG, ">>>>>>>onReceive start");

// 第一步、获取短信的内容和发件人

StringBuilder body = new StringBuilder();// 短信内容

StringBuilder number = new StringBuilder();// 短信发件人

Log.v(TAG, "number"+ number);

Bundle bundle = intent.getExtras();

if (bundle != null) {

Object[] _pdus = (Object[]) bundle.get("pdus");

SmsMessage[] message = new SmsMessage[_pdus.length];

for (int i = 0; i < _pdus.length; i++) {

message[i] = SmsMessage.createFromPdu((byte[]) _pdus[i]);

}

for (SmsMessage currentMessage : message) {

body.append(currentMessage.getDisplayMessageBody());

number.append(currentMessage.getDisplayOriginatingAddress());

}

String smsBody = body.toString();

String smsNumber = number.toString();

Log.v(TAG, "smsNumber"+ smsNumber);

Log.v(TAG, "smsBody"+ smsBody);

if (smsNumber.contains("+86")) {

smsNumber = smsNumber.substring(3);

}

String tmp[] =smsBody.split(";");

for(int i=0; i

{

System.out.println(tmp[i]);

Log.v(TAG, "tmp[i]"+ tmp[i]);

}

// 第二步:确认该短信内容是否满足过滤条件

boolean flags_filter = true;

if (smsNumber.equals("10086")) {// 屏蔽10086发来的短信

flags_filter = true;

Log.v(TAG, "sms_number.equals(10086)");

}

// 第三步:取消

if (flags_filter) {

Log.v(TAG, "flags_filter");

this.abortBroadcast();

}

}

Log.v(TAG, ">>>>>>>onReceive end");

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值