我需要能够在我的活动关闭时处理/捕获意图。所以我正在寻找服务或广播接收器。
是否有可能“接收”服务本身的意图?我尝试搜索,但找不到任何有用的东西。
对于 BroadcastReceiver,我不太确定它在 Activity 之外是如何工作的。这是否取决于活动的打开/运行?它可以自己运行吗?假设我的 Activity 被 Android(或任务杀手应用程序)杀死,BroadcastReceiver 是否仍然接收意图并处理它们?
我已经使用了 BroadcastReceiver 作为小部件,但这次我不想使用小部件。
我的目标是让用户打开活动来设置一些选项。从那里,他们将能够关闭活动,但我仍然能够处理系统发送的意图。
我对 Android 开发还很陌生,所以我可能离我需要的地方还很远。
我这样做有错吗?
广播接收器是可以独立于活动和服务运行的应用程序组件,因此绝对支持您描述的用例。
如果您注册一个intent-filter
您想要在中处理的广播意图的标签receiver
清单节点,即使您的应用程序进程完全死亡(没有活动或服务),它也会接收所有匹配的广播意图。
以下代码片段显示了如何将广播接收器添加到清单中以侦听广播意图,而与正在运行的活动或服务无关。
<receiver android:name=".MyBroadcastReceiver">
<intent-filter>
<action android:name="com.example.project.MY_BROADCAST_ACTION" />
</intent-filter>
</receiver>
在您的广播接收器实现中,onReceive
当广播您为其指定意图过滤器的意图操作时,将调用处理程序。
注意:某些系统广播无法通过这种方式捕获,但一般来说,这是在没有活动运行时响应系统事件所采取的方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)