You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Manifest中Activity的intent-filter配置疑问:自定义广播为何能被接收?

问题解答

这种情况是完全正常的,核心原因是Activity的IntentFilter和广播接收器的IntentFilter是两套独立的机制,互不影响:

  • Activity的intent-filter只负责匹配启动Activity的Intent:你的MainActivity配置的android.intent.action.MAIN和android.intent.category.LAUNCHER,只限制了“只有桌面图标点击这类符合规则的Intent才能启动它”,和广播接收逻辑无关。
  • 你在Fragment里注册的广播接收器,对应的IntentFilter是用来匹配广播Intent的:只要广播的Action(也就是你设置的com.example.myapplication.myservice)和接收器的过滤规则一致,就能被正常接收,这套逻辑和Activity的启动规则没有任何关联。

你当前的流程完全符合Android组件交互逻辑:MyService收到消息后发送自定义Action的广播,Fragment里的接收器正好监听了这个Action,所以能成功接收,和MainActivity的配置不存在冲突。

内容的提问来源于stack exchange,提问作者andynewman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 19:10:20