江门阿里云代理商:android 短信拦截demo

package com.example.smsinterceptor;

import android.Manifest;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.telephony.SmsMessage;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

private BroadcastReceiver smsReceiver;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // Check for SMS permission
    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.RECEIVE_SMS) != PackageManager.PERMISSION_GRANTED) {
        ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.RECEIVE_SMS}, 1);
    }

    // Register SMS receiver
    smsReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            Bundle extras = intent.getExtras();
            if (extras != null) {
                Object[] pdus = (Object[]) extras.get("pdus");
                for (Object pdu : pdus) {
                    SmsMessage sms = SmsMessage.createFromPdu((byte[]) pdu);
                    String messageBody = sms.getMessageBody();
                    
                    // Add your logic to intercept and process SMS messages
                    if (messageBody.contains("KEYWORD")) {
                        // Block this message
                        abortBroadcast();
                        Toast.makeText(context, "SMS Blocked", Toast.LENGTH_SHORT).show();
                    }
                }
            }
        }
    };

    IntentFilter filter = new IntentFilter();
    filter.addAction("android.provider.Telephony.SMS_RECEIVED");
    registerReceiver(smsReceiver, filter);
}

@Override
protected void onDestroy() {
    super.onDestroy();
    if (smsReceiver != null) {
        unregisterReceiver(smsReceiver);
    }
}

}

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

public class SmsReceiver extends BroadcastReceiver {

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

        for (int i = 0; i < messages.length; i++) {
            messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
            String sender = messages[i].getOriginatingAddress();
            String messageBody = messages[i].getMessageBody();

            // Add your logic here to check and intercept the sms
            if (sender.equals("1234567890") && messageBody.contains("keyword")) {
                abortBroadcast(); // Block the SMS
                Toast.makeText(context, "SMS from blocked sender intercepted", Toast.LENGTH_SHORT).show();
            } else {
                // Forward the SMS to default messaging app
            }
        }
    }
}

在AndroidManifest.xml中注册SmsReceiver接收器:

江门阿里云代理商:android 短信拦截demo
<receiver android:name=".SmsReceiver">
    <intent-filter android:priority="999">
        <action android:name="android.provider.Telephony.SMS_RECEIVED" />
    </intent-filter>
</receiver>

请注意,这段代码演示了如何拦截指定发送者和包含特定关键字的短信。您可以根据自己的需求对短信内容进行进一步的处理和拦截。在实际应用中,建议添加权限READ_SMSRECEIVE_SMS

发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/150090.html

(0)
luotuoemo的头像luotuoemo
上一篇 2024年2月19日 19:27
下一篇 2024年2月19日 19:46

相关推荐

  • 宜春阿里云代理商:阿里云创客创业扶持政策

    宜春阿里云代理商与阿里云合作,为创客创业者提供一系列扶持政策,旨在帮助他们更好地开展创业活动。具体政策包括: 云产品优惠:提供阿里云的云产品和服务优惠,让创业者可以以更低的成本使用云计算等先进技术,提高创业项目的灵活性和可扩展性。 技术支持:为创业者提供专业的技术支持,帮助他们解决在使用阿里云产品和服务过程中遇到的技术问题,提高项目的效率和质量。 营销推广:…

    2024年1月3日
    51600
  • 西安阿里云代理商:Android圆形

    西安阿里云代理商为您提供一种Android圆形的解决方案。在Android中实现圆形效果通常有两种方法: 使用圆形裁剪: 首先,在布局文件中使用一个ImageView来显示图片。 然后,通过设置ImageView的scaleType属性为”centerCrop”来实现图片的裁剪。 最后,将ImageView的形状设置为圆形,可以使用一…

    2023年12月31日
    1.1K00
  • 阿里云企业邮箱:阿里云企业邮箱的日历功能能否与其他日历同步?

    阿里云企业邮箱:日历功能与其他日历的同步能力解析 一、阿里云企业邮箱日历功能概述 阿里云企业邮箱作为一款面向企业用户的高效通信工具,其日历功能是核心模块之一。该功能不仅支持日程创建、会议邀请、提醒设置等基础操作,还具备团队协作能力,例如共享日程、查看同事空闲时间等。这一功能的设计初衷是提升企业内部的时间管理效率,减少沟通成本。 二、日历同步功能的重要性 在现…

    2025年8月12日
    30100
  • 许昌阿里云代理商:阿里云共享web应用防火墙

    阿里云共享web应用防火墙是由阿里云提供的一种云安全产品,许昌阿里云代理商可以将其提供给客户使用。这个防火墙可以保护客户的web应用不受到各种网络攻击和恶意行为的侵害。 阿里云共享web应用防火墙的主要功能包括: 支持自动识别和阻止常见的web攻击,如SQL注入、跨站脚本等。 提供多种防护策略,如白名单、黑名单、正则表达式等。 支持实时监控和日志记录,可实时…

    2023年12月24日
    50600
  • 阿里云机器学习成本

    阿里云机器学习的成本取决于多个因素,包括所选的机器学习服务、使用的资源和服务的规模等。以下是一些常见的阿里云机器学习服务及其可能的成本因素: Alibaba Cloud Machine Learning Platform for AI(PAI):根据使用的资源和服务的规模,费用可能包括数据存储费、数据处理费、机器学习训练费、模型部署费等。 Alibaba C…

    2023年8月4日
    49900

发表回复

登录后才能评论

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
购买阿里云服务器请访问:https://www.4526.cn/