在 Android 上阻止传入/传出短信

2024-02-24

有谁知道通过代码阻止传入/传出短信的可靠方法?如果收到实际的短信也没关系,但我想阻止收到该短信的任何通知。此外,不应允许用户发送(或者最好是键入)SMS 消息。那可能吗?

Thanks


您无法阻止外发短信。

这是我用来阻止传入文本的方法。


短信接收器.java

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 BroadCastReceiver extends BroadcastReceiver 
{
/** Called when the activity is first created. */
private static final String ACTION = "android.provider.Telephony.SEND_SMS";
public static int MSG_TPE=0;
public void onReceive(Context context, Intent intent) 
{ 
    String MSG_TYPE=intent.getAction();
        if(MSG_TYPE.equals("android.provider.Telephony.SMS_RECEIVED"))
    {
//          Toast toast = Toast.makeText(context,"SMS Received: "+MSG_TYPE , Toast.LENGTH_LONG);
//          toast.show();

    Bundle bundle = intent.getExtras();
    Object messages[] = (Object[]) bundle.get("pdus");
    SmsMessage smsMessage[] = new SmsMessage[messages.length];
    for (int n = 0; n < messages.length; n++) 
    {
        smsMessage[n] = SmsMessage.createFromPdu((byte[]) messages[n]);
    }

    // show first message
    Toast toast = Toast.makeText(context,"BLOCKED Received SMS: " + smsMessage[0].getMessageBody(), Toast.LENGTH_LONG);
    toast.show();
        abortBroadcast();
        for(int i=0;i<8;i++)
        {
            System.out.println("Blocking SMS **********************");
        }

    }
    else if(MSG_TYPE.equals("android.provider.Telephony.SEND_SMS"))
    {
        Toast toast = Toast.makeText(context,"SMS SENT: "+MSG_TYPE , Toast.LENGTH_LONG);
        toast.show();
        abortBroadcast();
        for(int i=0;i<8;i++)
        {
            System.out.println("Blocking SMS **********************");
        }

    }
    else
    {

        Toast toast = Toast.makeText(context,"SIN ELSE: "+MSG_TYPE , Toast.LENGTH_LONG);
        toast.show();
        abortBroadcast();
        for(int i=0;i<8;i++)
        {
            System.out.println("Blocking SMS **********************");
        }

    }

}

}

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="APP.PACKAGE.NAMEHERE"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="10" />

<supports-screens 
android:largeScreens="true" 
android:normalScreens="true" 
android:smallScreens="true" 
android:resizeable="true" 
android:anyDensity="true" />

<uses-feature android:name="android.hardware.telephony" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.WRITE_SMS" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECEIVE_MMS" />

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:name=".APPACTIVITYHERE"
        android:label="@string/app_name"
        android:configChanges="orientation|keyboardHidden" >


    <service android:name=".MyService" android:enabled="true"/>
     <receiver android:name="SmsReceiver">
      <intent-filter android:priority="2147483647">
       <action android:name="android.provider.Telephony.SMS_SENT"/>
      </intent-filter>
     </receiver>

     <service android:name=".MyServiceSentReceived" android:enabled="true"/>
      <receiver android:name="SmsReceiver">
        <intent-filter android:priority="2147483645">
         <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
        </intent-filter>
      </receiver>

</application>

从清单中删除的主要内容是服务块、接收器块和权限。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Android 上阻止传入/传出短信 的相关文章

  • 键入时将编辑文本中的每个单词大写

    我想在打字时将编辑文本中的每个单词大写 My XML
  • 指标元素之间的空间

    如何增加 减少指标元素之间的空间ViewPagerIndicator 我用过CirclePageIndicator 我能够通过以下步骤在两个指标之间留出更多空间 打开源代码CirclePageIndicator并找到变量mRadius 在第
  • 从 ios 和 android 端连接到 xmpp 时获取所有群组消息

    我在用开放火版本 4 0 1 使用开火Rest Api https github com gidkom php openfire restapi我在服务 servicename xx xx xxx xxx 中创建了群聊室 现在房间已创建 发
  • Android:从 https url 获取响应

    问候 我正在开发一个 Android 应用程序 需要通过 https 打开一个 url 带有 POST 参数 并获取响应 我有一个自签名证书 这让情况更加复杂 我还需要接受cookies 有人知道从哪里开始吗 提前谢谢了 Android 附
  • 如何在Android应用程序的同一屏幕上显示文本框的值,就像whatsapp一样

    这是我的主文件 我在其中调用按钮上的单击事件来传递值 protected void onCreate Bundle savedInstanceState super onCreate savedInstanceState setConten
  • 如何在phonegap上使用GCM处理android中的多个推送通知

    当推送通知到达时 如果用户无法查看该通知 他收到另一条通知 之前的通知正在更新为新的 但它不应该更新为最新的 我们需要单独显示每个通知 这可以使用 GCM 吗 我已经使用Phonegap来开发应用程序 PushPlugin 支持在有效负载中
  • 无法从后台服务通过 WiFi 访问互联网

    我将直接介绍我发现的一些事实 数据 如果您遇到 解决了类似的问题 请帮助我 我每 5 分钟向服务器发送一次数据 除非用户在服务器的帮助下手动将其关闭 wakeful broadcast receiver通过一个intent service
  • 拦截来自外部应用程序的意图

    假设我想开发一个以某种方式扩展的应用程序 让我说 合作 非常受欢迎的应用程序我显然无法控制 为了简单起见 我们还假设非常著名的应用程序作者不会发布更新来阻止我的应用程序 我研究了该应用程序的功能并发现它广泛使用BroadcastReceiv
  • 颤动附近的连接

    当我尝试在设备上做广告或发现时 我收到此错误 但是前一天在环路上效果很好 PlatformException Failure 17 API Nearby CONNECTIONS API is not available on this de
  • android:widgetLayout 和 android:layout 之间的区别?

    我得到一些奇怪的配置 其中 widgetLayout 配置列表项的内部空间 而布局配置整个项目列表和屏幕背景 有人能真正解释一下什么是 widgetLayout 吗 android layout 整个首选项的布局 包括标题 摘要和小部件 a
  • 即使获得平台签名也无法读取系统文件

    我已经构建了一个自定义 Android ROM 我已经使用平台签名签署了我的应用程序并添加了android sharedUserId android uid system 在清单文件中 我的应用程序被授予所有 签名 和 系统 级别权限 但不
  • android 从图库中选择图像

    我想从图库创建一个图片选择器 我使用代码 intent new Intent Intent ACTION PICK android provider MediaStore Images Media EXTERNAL CONTENT URI
  • 如何在将数据发送到 Firebase 数据库之前对其进行加密?

    我正在使用 Firebase 实时数据库制作聊天应用程序 我知道 Firebase 非常安全 只要您的规则正确 但我自己可以阅读使用我的应用程序的人的所有聊天记录 我想阻止这种情况 为此我需要一种解密和加密方法 我尝试使用凯撒解密 但失败了
  • DeadSystemException启动服务Android 7

    在过去的几周里 我在我的事故报告中看到 Fatal Exception java lang RuntimeException Unable to start service com MyService ef705d8 with Intent
  • 有没有办法模拟小部件或屏幕特定位置的触摸?

    我想触摸或点击小部件上的某处 而不让用户在此时明确触摸屏幕 有什么办法可以做到吗 我已经检查了SO答案 有些人建议使用 集成测试 但在未物理或以某种方式连接到笔记本电脑的设备上无法执行 集成测试 无法找到更好的措辞 我还尝试进行 hitTe
  • Android同步onSensorChanged?

    这是我的问题的后续 Android线程可运行性能 https stackoverflow com questions 36395440 android thread runnable performance 我在理解应用程序的同步方法时遇到
  • 无法读取解析推送通知包数据

    我尝试使用 Parse 推送通知服务发送自定义数据 但从 Bundle 中提取时总是返回 null 值 自定义广播接收器 Override public void onReceive Context context Intent inten
  • 如何自动更新Android Studio?

    我需要将 Android Studio 更新到 0 9 9 版本 但是当我按 下载 在更新信息对话框上 时 它会将我发送到此处 http developer android com sdk index html http developer
  • 如何更改焦点/按下时图像按钮的色调

    我有一个ImageButton在我的应用程序中 当按钮打开时我需要更改图像的色调pressed focused 我有ImageButton设置为获取其src来自 XML 文件 如下所示
  • 从 Android 中的过渡动画中排除 BottomNavigation

    我一直在四处寻找 但找不到有助于解决这个特定问题的答案 我的应用程序有一个自定义滑入 滑出效果 如下所示 Intent intent new Intent getApplicationContext MyActivity class sta

随机推荐

  • 为什么使用 OleDb 导入 Excel 时会忽略第一个空行

    使用 Net 的 OleDb 我尝试导入一个 Excel 表 其中第一行可以为空 我想保留 DataTable 中的空行 以便稍后能够将单元格映射到 Excel 样式的单元格名称 A1 A2 但无论我做什么 第一行都会被删除 Excel 文
  • 列出 Cucumber 中所有可用的标签

    是否有命令行选项可以列出黄瓜测试套件中的所有标签 例如 我想要这样的东西 cucumber show tags foo feature 那会给我类似的东西 ci development regression wip 对于单个文件 cucum
  • Spring 4 RestController JSON:根据请求“接受”标头,特征不可接受

    我正在使用 spring 4 1 1 RELEASE 并在 pom 中包含了 jackson core asl 1 9 13 和 jackson mapper asl 1 9 13 以使用 RestController 创建一个简单的应用程
  • 为什么单元格渲染器经常扩展 JLabel?

    我注意到这很常见 例如 DefaultListCellRenderer DefaultTableCellRenderer 和 DefaultTreeCellRenderer 都使用它 我在网上看到的许多自定义单元格渲染器也使用它 我想在代码
  • 使用 Php 5 和 MySQL 进行 GPS 半径搜索

    我有一个PlaceID PlaceName Lat Lon作为我的数据库结构 假设我当前的纬度和经度为 lat 37 331862 lon 122 029937 我想找到半径 100 英尺内的地方 可能允许用户选择 您可能有兴趣查看以下演示
  • switch 语句的 Jacoco 覆盖范围

    我正在努力为我正在开发的库获得 100 的代码覆盖率 但我似乎在 switch 语句和覆盖率方面遇到了一些问题 我根本不理解 我目前正在使用 Jacoco 0 7 2 因为每个新版本似乎都与 Robolectrics 发生冲突 我测试了一个
  • 猫鼬预保存挂钩中的异步功能不起作用

    在预保存挂钩中调用异步函数正在返回我undefined密码 我是否从根本上误解了async这里 我已经在我的应用程序的其他区域成功使用它 它似乎工作正常 userSchema pre save function next let user
  • localStorage()、window.localStorage() 或 document.localStorage() 哪个选项更好?

    这个问题说明了一切 我意识到所有的选择do在最新的浏览器中工作 但是语义上最好的选择是什么 为什么 根据W3C标准 正确的是window localStorage因为localStorage属性是 window 对象的一部分 它不是一个函数
  • (任何语言)使用交换查找向量中元素的所有排列

    今天在实验室会议上有人问我这个问题 我们可以想象一个包含元素 1 N 1 长度为 N 的向量 是否存在生成向量中元素的所有排列或顺序的算法 系统 方法 一种建议的方法是交换随机元素 显然 如果存储所有先前生成的排列以供将来参考 那么这将起作
  • 在 Visual Studio 2019 中配置 CMake 版本

    有没有办法配置Visual Studio 2019集成CMake版本 我想使用最新 CMake 版本中的一些功能 但在这种情况下我被迫从命令行构建 如果我从 VS IDE 构建 则使用的 CMake 版本是 Visual Studio 集成
  • Chrome 41 ERR_SSL_VERSION_OR_CIPHER_MISMATCH Tomcat 7

    由于我已将 Chrome 从版本 40 更新到 41 我无法再访问在本地 tomcat 7 实例中运行的 ssl 站点 我有一个自签名证书 Chrome 只打印This webpage is not available和 一起ERR SSL
  • http 上没有侦听端点 // 可以接受 WCF 中的消息

    我正在尝试开发一个webservice 在我的应用程序中 我需要连接到我的webservice没有任何引用 所以我使用这段代码 static void Main string args BasicHttpBinding binding ne
  • 通过 PHP 使用 HTTP POST 发送 XML 数据

    我需要发送此 XML
  • 在 Android studio 中使用 Jcenter 和 gradle

    编辑 弄清楚了 我实现了 JBaruch 对项目范围 build gradle 文件的 allprojects gt repositories 部分的建议 我正在编写一个依赖 IOIO 的项目 在我的项目上编译 IOIO 的库给我带来了麻烦
  • 如何将图像从服务器(api)存储到房间数据库

    我想将来自 api 的图像存储到房间数据库中 我从 api 接收数据和图像 当我处于在线模式时 图像是使用 api 提供的 url 加载的 但当离线时 图像应该以离线模式从数据库中存储和检索 我像这样加载图像 它加载图像 if data d
  • Vaadin - 布局调整重叠大小

    当尝试调整浏览器大小时 我面临与我的项目重叠的问题 我尝试了很多不同的变体来使其发挥作用 但结果仍然不可接受 Before resizing A B and C包含在垂直布局 https vaadin com api com vaadin
  • 如何配置 sbt test / ScalaTest 仅显示失败?

    有没有办法截断测试结果 仅在单元测试失败时才显示单元测试的结果文本 我正在开发一个具有 850 个单元测试的 Scala 项目 成功的单元测试的绿色文本使得很难只关注失败的情况 我正在谈论的示例 info should have color
  • 编辑预先存在的 cab 文件/安装程序文件

    我目前正在尝试制作 CD 的下载 安装文件 但我以前从未这样做过或编写过任何类型的编码 所以我有点不知所措 当我们上次创建安装程序包时 我尚未受雇 我们使用了 InstalShield 但那是几十年前的事了 我们无法承受 500 美元以上的
  • 从computeDigest(algorithm, value) byte[] 获取字符串表示形式

    Google App Script 函数computeDigest 返回签名的字节数组 如何获取摘要的字符串表示形式 我已经尝试过 bin2String 函数 function sign var signature Utilities co
  • 在 Android 上阻止传入/传出短信

    有谁知道通过代码阻止传入 传出短信的可靠方法 如果收到实际的短信也没关系 但我想阻止收到该短信的任何通知 此外 不应允许用户发送 或者最好是键入 SMS 消息 那可能吗 Thanks 您无法阻止外发短信 这是我用来阻止传入文本的方法 短信接