如何拉起被一键清除的安卓进程

来源:互联网 发布:巨人网络老板 编辑:程序博客网 时间:2024/06/06 16:40
做过开发的小伙伴可能会有类似的经历,之前做过一个用于自己大学班级日常互动的app。期初大家都觉得不错,有自己班级的风格,但一段时间后发现用的人越来越少,新状态也少有人回复。后来发现到大部分人都经常清理内存(如使用360手机卫士等软件的一键关闭进程),一旦应用被清理就必须再次打开才能收到朋友的消息。

此外,手机的清理功能会强制关闭很多其他信息,如微博的私信、评论,剧情的更新通知等等。原因在于Android4.0以上系统内部对于静态注册的receiver做了一次保护(receiver可以简单理解为接收端),如果应用是被强制关闭,或者重来都没有启动过,静态注册的receiver是无法获取到广播事件的,即我们不能及时收到想要的信息。
        

手机的一键优化功能   


被安全卫士关闭自启的应用   

随着手机系统的快速更新,大部分Android手机用户都摒弃了较低的系统版本,目前,Android系统4.0以上的用户数占比已经高于95%,手机上安装有安全管家应用的用户数超过4.5亿。





Android系统分布

对于各类手机助手,相信无论是软件开发者还是普通用户都和我一样是又爱又恨。通过试用,我发现个推的SDK能在进程关闭的情况下进行服务的实时推送。凡是使用个推的APP推送链路会共享,程序被一键杀掉后能通过用户自动打开高频应用从而使其他APP推送链路畅通。这不仅实现了各个应用之间的互相看护,还大大减少了应用对手机电量以及流量的消耗。普通的推送技术采用的是每个应用单独一个通道,一旦进程被杀死,应用就会和服务器失去连接。通道被单方面关闭了,只有当用户再起开启时,关闭的门才能被打开。而这项多通道合并技术,顾名思义,是将这些通道合并在了一起,形成了一注更大的水流,即便有个别支流被强制关闭,只要留存的应用中有其他接入个推的应用,整条通道依然能导通。通过SDK内部进程间的通信机制,被关闭的部分可以重新打开,实现了应用相互带动的良好关系,我的应用也是通过这个方式得到了同学们又一次的关注。

具体过程相信大家看了下面的图就会明白:

   SDK进程间通信相互看护流程

当然,看护功能是相互的,这对我们开发者来说可以达到互利共赢的目的。新版SDK默认开启看护以及被看护功能,若需退出看护联盟,应该可以联系个推的技术支持来解决。
0 0