中止短信从收件箱中广播和/或删除收到的短信

时间:2012-03-14 10:06:59

标签: java android sms broadcastreceiver

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

我搜索了很多,但是 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>

1 个答案:

答案 0 :(得分:2)

我还需要拥有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>