我有一些服务类,可以注册多个警报。
在我的 BroadcastReceiver 课程中,我希望 onReceive ()方法调用服务类的某些方法。
然而,我不知道如何将它们绑在一起。我试图让 BroadcastReceiver 成为一个内部类,但后来我遇到了更多错误,根本无法触发警报。
由于
答案 0 :(得分:6)
查看http://developer.android.com/reference/android/content/BroadcastReceiver.html生命周期。 BroadcastReceiver仅用于处理消息。这意味着它的生命很短暂,蚂蚁也是无国籍的。所以你不能绑定它。
无论如何,您可以尝试启动BroadcastReceiver的服务形式onReceive(Context context, Intent intent)
方法,
像这样:
public void onReceive(Context context, Intent intent) {
Intent intent2 = new Intent(context, GCMService.class);
intent2.putExtras(intent);
context.startService(intent2);
}
然后a =服务应处理广播消息。
答案 1 :(得分:2)
来自http://developer.android.com/guide/components/bound-services.html
注意:只有活动,服务和内容提供商才能绑定到服务 - 您无法绑定到广播接收器中的服务。