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

相关推荐

  • 阿里云企业邮箱的邮件预览能展示邮件的来源 IP 吗?

    阿里云企业邮箱的邮件预览功能及来源IP显示分析 阿里云企业邮箱因其强大的企业级功能和高效的邮件管理能力而备受青睐。本文将详细介绍阿里云企业邮箱的邮件预览功能是否支持显示邮件来源IP,以及分析该功能在企业信息安全和管理中的重要性。 阿里云企业邮箱邮件预览功能 阿里云企业邮箱提供丰富的邮件预览选项,用户可以在“标准模式”和“会话模式”中进行切换。标准模式通常以传…

    2024年10月29日
    75400
  • 崇左阿里云企业邮箱代理商:阿里云盘怎么用邮箱注册

    崇左阿里云企业邮箱代理商:阿里云盘怎么用邮箱注册 阿里云企业邮箱是一款基于云计算技术的企业级邮件服务,它提供了丰富的功能和稳定的性能,是企业日常沟通和协作的首选工具。为了方便用户的注册和使用,阿里云企业邮箱提供了多种注册方式,其中就包括通过阿里云盘进行注册。本文将介绍如何使用邮箱注册阿里云企业邮箱,并探讨阿里云企业邮箱代理商的优势。 使用阿里云盘邮箱注册阿里…

    2024年1月26日
    72800
  • 阿里云服务器怎么使用摄像头

    若要在阿里云服务器上使用摄像头,你需要满足以下条件: 你的服务器必须有支持摄像头的硬件设备。 服务器操作系统必须有相应的摄像头驱动程序。 以下是一般步骤: 确保服务器上已经安装了摄像头驱动程序。你可以通过命令ls /dev/video*来检查是否存在摄像头设备。如果没有该命令,说明你的服务器操作系统可能没有预先安装摄像头驱动程序。 如果服务器操作系统没有预先…

    2023年10月25日
    83200
  • 阿里云企业邮箱:如何实现邮件智能过滤?

    阿里云企业邮箱:如何实现邮件智能过滤 在当今信息化的时代,电子邮件已成为企业沟通的重要工具。然而,随着邮件数量的增加,垃圾邮件和钓鱼邮件也层出不穷。如何有效地过滤这些不必要的邮件,保护企业的邮件安全,成为了企业邮箱服务的重要功能。阿里云企业邮箱凭借其强大的技术支持和丰富的功能,提供了智能邮件过滤的解决方案。 阿里云企业邮箱的优势 阿里云企业邮箱是阿里巴巴集团…

    2025年4月9日
    52200
  • 北京阿里云代理商:ajax回退刷新

    当使用ajax请求数据并局部刷新页面后,如果希望回退按钮能够刷新整个页面,可以使用以下方法: 监听浏览器的回退事件(popstate事件): window.onpopstate = function(event) { location.reload(); } 在使用ajax请求并局部刷新页面的地方,将页面状态添加到浏览器的历史记录中: function re…

    2024年1月4日
    74700

发表回复

登录后才能评论

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

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

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