android 4.0 消息广播无法接收的原因

就是在配置文件中添加权限

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

在receiver里加入:

<!-- 系统启动完成后会调用--> 
<action android:name="android.intent.action.BOOT_COMPLETED"> 

但是,android 4.0为了防止一些malware(恶意软件)不经用户启动就在后台运行,默认安装的程序在用户启动前是完全被系统忽略的,即使程序注册了广播,系统也不会给该程序传递广播。只有程序被用户运行过之后,消息广播才会生效。而且,即使程序已经运行过了,如果被用户Force Stop(强制停止),又会回到被系统忽略的状态。这个问题其实从3.1的时候就已经有了,最近用4.0的系统测试才发现了这个问题的存在,引起不少麻烦。

你可能感兴趣的:(android 4.0 消息广播无法接收的原因)