外观
静态注册和动态注册 BroadcastReceiver 的区别是什么?
标准回答
静态注册写在 Manifest 中,系统按规则发现组件;动态注册由运行中的代码决定何时开始和停止接收。
通俗例子
只在页面可见时关注某些变化,可动态注册并配对注销;并非所有隐式广播都允许通过 Manifest 长期接收。
深入解释
**注册位置有什么不同:**静态注册写在 Manifest,系统按允许的规则启动和分发;动态注册在运行时建立接收关系,接收范围受注册上下文和解除注册时机影响。
**为什么要看系统限制:**某些隐式广播不能再随意静态接收,导出规则和权限也影响安全。只在页面需要时监听,就应成对注册和注销,而不是注册一次后永远不管。
内容来源
- Android · AI Agent 知识手册 · 原条目
10.4.1