2

I've register a receiver in AndroidManifest.xml like this

<receiver android:name="com.sunrise.taximate.message.MessageRecevier"> 
        <intent-filter>
                <action android:name="xxx.xxxx.xxx.xxx" /> 
        </intent-filter>
</receiver>

and now I want to get the receiver's instance in one of my activities(Like MainActivity),but I don't know how to. anyone can help me?

4

2 に答える 2

1
private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver()
{

    @Override
    public void onReceive(Context context, Intent intent)
    {
        // Your code here to do what ever you want
    }
}
于 2013-03-25T08:09:46.600 に答える
0

レシーバーは、システムや場合によってはユーザーによって生成されたイベントに作用することを意図しています。それらのインスタンスを自分で取得したいという特別なケースがありますが、これは一般的ではありません。レシーバーを持つことの要点は、システム イベントに反応して何らかのアクションを実行することです。自分が何をしているのかわからない場合は、アクティビティで自分でレシーバー インスタンスを作成しないことをお勧めします。

あなたが本当にしたい場合は、このようにすることができます

private BroadcastReceiver myReceiver = new BroadcastReceiver()
{

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

関連情報については、このスレッドも参照してください: BroadcastReceiver as inner class

于 2013-03-25T08:13:42.757 に答える