前一段时间碰到一个这样的需求,监听开机广播,后给Handler发送一个延迟15s后收到的消息。当时接到这个需求的时候很简单。直接在开机广播中给Handler发送一个message嘛。写完代码测试的时候发现这个message没有收到,通过日志发现这个消息确实发出去了,当时想了很久没想到。仔细分析了下日志后发现
应用进程被系统干掉了...干掉了.
猜想可能是在发出消息后一段时间,应用没有执行任务,导致系统认为此进程为空闲进程,进行会回收此进程。
查询了官方文档后验证了我的想法
Receiver Lifecycle
A BroadcastReceiver object is only valid for the duration of the call to onReceive(Context, Intent)
. Once your code