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

相关推荐

  • 上海阿里云代理商:apicloud studio 快捷键

    以下是 apicloud studio 的一些常用快捷键: Ctrl + S:保存文件 Ctrl + Shift + F:格式化代码 Ctrl + /:注释选中代码行或取消注释 Ctrl + P:快速跳转到文件 Ctrl + Shift + P:打开命令面板 Ctrl + Shift + L:选中所有匹配项 Alt + Shift + F:自动排版代码 Ct…

    2024年3月7日
    17900
  • 雄安新区阿里云代理商:阿里云服务器如何应对网络故障和断网问题?

    雄安新区阿里云代理商指出,阿里云服务器可以通过以下方式来应对网络故障和断网问题: 多地域部署:阿里云服务器支持多地域部署,可以在多个地理位置设置服务器实例,当某一地域网络故障或断网时,可以快速切换至其他地域服务器,保障服务的稳定性和可靠性。 高可用架构:阿里云服务器支持高可用架构,可以使用负载均衡、多台服务器集群等方式来实现高可用性,当某台服务器因网络故障或…

    2023年11月16日
    20900
  • 兴化阿里云企业邮箱代理商:阿里企业邮箱用户名是什么

    阿里云企业邮箱的优势 阿里云企业邮箱是一种基于云技术的企业级电子邮件解决方案,为企业提供了高效、安全和稳定的电子邮件服务。以下是阿里云企业邮箱的优势: 1. 可靠性 阿里云企业邮箱基于阿里云的强大基础设施,拥有99.9%的可靠性保证。无论是在网络连接、存储设备还是数据中心方面,阿里云都有严格的监控和备份机制,确保用户的邮件始终可靠可用。 2. 安全性 阿里云…

    2024年1月30日
    18200
  • 阿里云仓库是干什么工作用的

    仓库里是具体做什么工作的? 仓库保管员,主要职责就是仓库储存品的保管,防护,账目卡物品一致。收(入库),发(出库),盘点。 支付宝里面阿里云是干啥? 我们普通人是用不上的,相当于阿里巴巴的一个后台处理数据平台 网店仓库物流是什么职业?主要是做什么工作,工资又是多少,有发展前景吗? 网店仓库物流,其实就是网上商店销售商品的存货和发货仓库,网上商店的规模大小和销…

    2023年8月25日
    16700
  • 温州阿里物联网平台代理厂家

    温州有什么出名的物联网网站? 好像没有吧,现在做的好的就是国脉,其他的都稍微差点,去天仕物联网看看去吧,基础知识板块做的不错。 温州有哪些互联网公司 温州大部分都是制造型企业。如果说比较出名的互联网企业还是在深圳,上海,杭州,北京等地。 2017年物联网平台可以开网吗 2017年,物联网领域最主要的挑战仍然是互联网安全。引发安全问题的部分原因主要来自用户轻视…

    2023年8月27日
    16900

发表回复

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

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

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

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