标签:
一般情况下,可以侦听一些经常发生的消息,如电量变化、开关屏幕、网络切换等等,注册BroadcastReceiver来接收消息,接收到后启动推送消息的Service。
现在有些厂商的ROM,一旦用户主动杀掉了进程,则不再投送广播消息给应用,导致应用无法启动,在这种情况下,可以用C Fork出来一个进程,检查主进程是否被杀,一旦被杀,立即调用shell命令启动Service,这个做法稍微流氓了一点,但有些应用,如IM,这样是提升用户体验的。
还有些厂商,如华为,在杀进程的时候,Fork出来的进程一起被杀。这时有两种方法:1、提示用户把应用加到诸如“受保护的应用”“清洁后台”之类的厂商清理程序的白名单中。2、使用厂商提供的推送接口。
标签:
原文地址:http://blog.csdn.net/dzg1977/article/details/42422781