【问题标题】:Abort sms broadcast and/or delete received sms from inbox中止短信广播和/或从收件箱中删除收到的短信
【发布时间】:2012-03-14 10:06:59
【问题描述】:

我正在尝试编写短信加密工具。使用此工具的人将能够通过短信在没有互联网的情况下聊天并保持加密状态。 我唯一需要的是如何阻止特定号码的短信进入收件箱文件夹,或删除短信通知,然后从收件箱中删除短信。

我搜索了很多,但是 https://stackoverflow.com/a/3875736/705297 这是行不通的。广播正在工作,我看到广播接收器已启动的日志消息,但它没有中止广播。

我还发现很多消息是不可能的。那么有可能吗,我该怎么做?我正在使用 android 2.1 及更高版本。 谢谢

代码(只是出于测试目的尝试取消所有短信): 广播接收器:

  @Override
  public void onReceive(Context context, Intent intent)
  {
      abortBroadcast(); }

清单的一部分:

<uses-permission android:name="android.permission.RECEIVE_SMS" />

 <receiver android:name=".SMSReceiver">
    <intent-filter android:priority="1000">
        <action android:name="android.provider.Telephony.SMS_RECEIVED" />
    </intent-filter>
</receiver>

【问题讨论】:

  • 它应该可以工作。可能你的优先级不够高

标签: java android sms broadcastreceiver


【解决方案1】:

我还需要拥有 BROADCAST_SMS 权限。那是我的问题。这是清单的工作部分。

<uses-permission android:name="android.permission.BROADCAST_SMS"/>
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
....
 <receiver android:name=".SMSReceiver" android:permission="android.permission.BROADCAST_SMS">
          <intent-filter android:priority="1000">
                <action android:name="android.provider.Telephony.SMS_RECEIVED" />
            </intent-filter>
        </receiver>

【讨论】:

  • 权限只授予系统应用 :: BROADCAST_SMS ?
猜你喜欢
  • 1970-01-01
  • 2012-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-08
  • 1970-01-01
  • 1970-01-01
  • 2011-05-06
相关资源
最近更新 更多