FLAG_EXCLUDE_STOPPED_PACKAGES导致接受不到广播

android 3.1之后增加了系统的安全权限,为了防止有些应用通过静态注册的广播而开启。在系统发出的广播中默认加上了FLAG_EXCLUDE_STOPPED_PACKAGES的flag,加上这个flag之后,不会去匹配包下面没有开启(就是已经停止的)组件。就是说当前应用在没有开启的情况下,即使注册了静态广播,系统的广播(由于设置了默认的flag)发出广播时,只会向那些应用已经开启的广播发送。所以这就限制了那些通过接受系统广播启动的流氓后台服务。


这个


FLAG_EXCLUDE_STOPPED_PACKAGES:

如果设置该属性,广播只会发送给已经开启的应用

FLAG_INCLUDE_STOPPED_PACKAGES

如果设置该属性,广播会发送给所有的应用

你可能感兴趣的:(FLAG_EXCLUDE_STOPPED_PACKAGES导致接受不到广播)