android.provider.Telephony.SMS_RECEIVED不可用

时间:2010-09-21 12:23:15

标签: android sms listener

我正在尝试创建一个新的短信接收列表。

我已经搜索了问题所有我发现它需要

android.provider.Telephony.SMS_RECEIVED

但它在android 2.2中不存在

如何收听新传入的消息是我的问题。!

2 个答案:

答案 0 :(得分:5)

您正在寻找与字符串值android.provider.Telephony.SMS_RECEIVED对应的android.provider.Telephony.SMS_RECEIVED_ACTION。

public static final String SMS_RECEIVED_ACTION =
                "android.provider.Telephony.SMS_RECEIVED";

查看有关如何操作的问题:BroadcastReceiver + SMS_RECEIVED

答案 1 :(得分:0)

我正在使用它来注册此广播

IntentFilter f=new IntentFilter();
    f.addAction(Telephony.Sms.Intents.SMS_RECEIVED_ACTION);
    this.registerReceiver(c, f);

或第二种方法可能如下。

您正在做的事情,不要忘记将android.provider.Telephony.SMS_RECEIVED用作字符串“ android.provider.Telephony.SMS_RECEIVED”,因为这是您接收SMS的意图。

以及这两种方法都适用于minsdk 19和(目标可以是== 26)。

IntentFilter f=new IntentFilter();
    f.addAction("android.provider.Telephony.SMS_RECEIVED");
    this.registerReceiver(c, f);