江门阿里云代理商: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

Like (0)
luotuoemo的头像luotuoemo
Previous 2024年2月19日 19:27
Next 2024年2月19日 19:46

相关推荐

  • 东莞阿里云代理商:安全证书cer

    东莞阿里云代理商:安全证书cer 阿里云作为国内领先的云计算服务提供商,其在安全证书方面具有许多优势。 一、确保数据传输安全 阿里云提供的安全证书cer可以通过SSL/TLS加密协议来保护数据传输过程中的安全性。这种加密机制可以有效地防止黑客窃听、数据篡改以及中间人攻击,确保用户的数据传输从源到目的地的完整性和保密性。 二、提升网站信任度 安全证书cer提供…

    2024年1月31日
    7700
  • 阿里云搭建mc服务器

    要在阿里云上搭建Minecraft服务器,你可以按照以下步骤操作: 创建阿里云ECS(弹性计算服务)实例:登录阿里云控制台,创建一个ECS实例来托管你的Minecraft服务器。选择一个合适的地域和操作系统,并确保实例的网络类型设置为公网IP。 配置安全组规则:在阿里云控制台的实例详情页中,找到对应的安全组,添加入站规则来允许Minecraft服务器所需的端…

    2023年11月4日
    10500
  • 企业邮箱免费版阿里云

    阿里云提供企业邮箱免费版,可以满足企业日常通讯和协作的需求。企业邮箱免费版提供5GB的存储空间和200封/日的发送限额,支持自定义企业域名和多账号管理,可以在PC端和移动端进行邮箱管理和使用。此外,企业邮箱免费版还提供简单的后台管理功能和基础的安全保障措施,如密码策略和防垃圾邮件等。企业邮箱免费版适用于小型企业和个人使用,如果有更大的需求,还可以升级为企业邮…

    2023年9月8日
    8700
  • 阿里云 轻量服务器 流量

    阿里云轻量服务器的流量指的是服务器在一定时间内上传和下载的数据量。根据不同的轻量服务器实例规格,阿里云会提供一定的包含的免费流量额度。一旦超出免费流量额度,就会开始收取超出部分的流量费用。 阿里云轻量服务器的流量费用根据不同的地域和流量分为不同的计费方式,包括按固定带宽计费和按使用流量计费两种方式。其中,按固定带宽计费方式适用于带宽需求相对稳定的场景,用户需…

    2023年10月19日
    13700
  • 宁波阿里云代理商:安卓 监控使用说明书

    欢迎您选择使用宁波阿里云代理商提供的安卓监控服务。以下是使用说明书,帮助您更好地使用我们的服务: 下载安装:请在安卓手机中下载并安装我们提供的监控应用程序。 注册登录:打开应用程序后,请按照提示进行注册和登录操作,确保可以正常使用监控功能。 设置监控:在应用程序中设置需要监控的目标设备,并进行相关设置,如监控频率、监控内容等。 监控查看:登录账号后,您可以随…

    2024年2月18日
    12100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

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

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