有没有办法在服务上下文中获得广播接收?
我尝试在清单文件中添加receiver
intent-filter,但当然Android每次都尝试实例化服务并抛出异常。
我该怎么做?
(我提到我在Android上是一个完整的菜鸟吗?)
答案 0 :(得分:3)
有没有办法在服务上下文中获得广播接收?
不直接。 Service
可以通过BroadcastReceiver
动态注册registerReceiver()
,或者您可以通过{{将清单注册BroadcastReceiver
“转发”到Service
startService()
1}}。
答案 1 :(得分:1)
Android将实例化一个服务来处理它已注册的任何特定Intent - 或者如果服务正在运行,它将在Intent当前操作完成后将Intent排入队列进行处理。要观看广播,请注册BroadcastReceiver并转发您的服务所见的内容。
如果您的服务正在抛出异常,那么它就有问题了。发布应用程序异常的完整堆栈跟踪,您可以使用adb和logcat作为here或Eclipse中的logcat视图查看。