intellij中清单错误中的广播接收器声明

时间:2013-09-04 11:34:57

标签: java android intellij-idea broadcastreceiver

我正在使用IntelliJ 12.1.4开发Android应用。当我使用类型接收器创建一个新的Android组件时,接收器将被添加到清单中

<receiver android:name=".Receiver">
    <intent-filter>
        <action android:name=" com.example.ACTION_EXAMPLE"/>
    </intent-filter>
</receiver>

但是给出错误“预期的类或接口”。我试图把接收器包括包名,但我仍然得到相同的错误。该项目成功编译,但是当与接收器关联的意图过滤器发送广播时,接收器什么都没有收到。

请帮忙吗?

提前致谢。

2 个答案:

答案 0 :(得分:0)

您还必须使用接收器

定义intent-filter
       <receiver
        android:name="Your receiver Name">
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
             //your action to perform on broadcast receiver
        </intent-filter>

在你的接收器课程之后,你必须检查

        if(intent(object of intent in onreceive method).equals("android.intent.action.BOOT_COMPLETED"))
         {

          //  action to perform
        }

答案 1 :(得分:0)

试试这个,

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

以上代码用于在清单文件中注册接收器。

<action android:name= "android.provider.Telephony.SMS_RECEIVED" />  

以上代码必须根据广播接收器进行更改。我使用上面的方法来触发短信接收活动。

然后你必须通过扩展BroadcastReceiver

来实现clsBroadcastreceiver
public class clsBroadcastreceiver extends BroadcastReceiver 

您还需要覆盖onReceive方法

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

你想做什么广播接收活动,放入onReceive(...){...}