用于发送短信的Android广播接收器?

时间:2009-06-13 11:44:06

标签: android sms broadcastreceiver

我创建了BroadcastReceiver并使用android.provider.Telephony.SMS_RECEIVED操作过滤器对其进行了配置,因此每次手机接收文本时都会调用该过滤器。

当电话发送一个文本(最好是独立于发送它的应用程序)时,是否有某些事件/操作或其他方式可以通知我的应用程序?

到目前为止,我看到的唯一选项是轮询content://sms/sent的内容提供商,它甚至不会向我发送所有已发送的文本,因为应用程序可以选择不将其放在那里。

1 个答案:

答案 0 :(得分:21)

不幸的是(目前)没有办法实现BroadcastReceiver,因为标准的sms应用程序使用SmsManger来发送消息,但是为发送和传递的意图指定了具体的内部类({{1分别是}和SmsReceiver.class。并不是说它有任何安慰,但您可以在Sms应用程序的source中找到以下注释:

MessageStatusReceiver.class

最好的选择似乎是轮询// TODO: Fix: It should not be necessary to // specify the class in this intent. Doing that // unnecessarily limits customizability.,可能使用ContentObserver