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

相关推荐

  • 襄阳阿里云代理商:apache超时

    襄阳阿里云代理商是指襄阳地区的阿里云代理商。Apache超时是指Apache服务器在处理请求时超过预设时间的现象。 Apache超时可以通过修改Apache服务器的配置文件来解决。以下是一些常见的解决方法: 修改httpd.conf文件中的Timeout参数:可以将Timeout参数的值增加,以延长Apache处理请求的超时时间。默认的超时时间是300秒(5…

    2023年12月28日
    18600
  • 武汉阿里云代理商:android httpclient api

    Android HttpClient API是一种用于处理HTTP请求的基本Android类库。以下是一些主要的类和接口: HttpClient类:HTTP客户端类,与服务器进行通信。可以向服务器发送HTTP请求,获取HTTP响应。 HttpGet、HttpPost、HttpPut和HttpDelete类:HTTP请求方式。 HttpResponse类:HT…

    2024年3月10日
    15300
  • 杭州阿里云代理商:app通信加密协议

    杭州阿里云代理商为app通信提供了多种加密协议选项,以下是其中一些常用的协议: SSL/TLS(安全套接层/传输层安全):这是一种广泛使用的加密通信协议,可以提供端到端的数据加密和身份验证功能。阿里云代理商使用SSL/TLS来加密app与服务器之间的通信,确保数据传输的安全性。 HTTPS(HTTP安全):这是在HTTP协议基础上添加了SSL/TLS加密功能…

    2024年2月8日
    14000
  • 阿里云更新后无法提交代码

    上传阿里云的网页代码改了后没反应 若出现上传很慢的情况,确认外网的带宽是否足够,与OSS的拦知陆猛枯连接是简顷否正常。可以通过ossutil工具检测网络质量。 阿里云服务器代码怎么才可以弄出来 要缓肢买虚拟空间。买来服务器或者虚拟空间了么,买来虚拟空间竖贺可以通过FTP上传,服务器可以通过本地上传上去,要在根目录下再细分目录来放置我写的代码。建议先领阿里云余…

    2023年8月28日
    16100
  • 阿里巴巴云客服做什么

    阿里巴巴云客服是阿里巴巴集团旗下的一款智能客服解决方案,主要用于企业客户的在线客服和呼叫中心服务。它采用了人工智能和自然语言处理技术,能够承担一些常规的客服工作,如在线咨询、FAQ解答、订单处理等,提供高效、智能的客户服务。阿里巴巴云客服具有以下主要功能: 自动回复:能够通过对用户输入进行语义理解和分析,快速给出准确的回复,节省人力成本和提高工作效率。 机器…

    2023年9月20日
    18300

发表回复

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

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

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

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