android 程序强制停止后服务后台启动运行 ---- 不同程序间相助 使用第三方服务

在做android客户端接收推送消息功能时,由于要考虑到程序及后台服务被杀死的可能,所以做了一个接收系统广播来重启服务的功能,但是在程序被强制停止后,系统广播无法接收到。在查看其它应用程序时,发现有的应用在程序被强制停止后仍然可以重新启动运行后台服务,通过查看后台日志,此应用是使用了第三方推送功能。

之后结合广播方面的限制(android3.1之后如果希望程序在强制停止后仍能接收广播,广播需要自定义,并在发送时设置一个标识(Intent.FLAG_INCLUDE_STOPPED_PACKAGES)),第三方服务之所以可以保持那么高的推送成功率,关键在于多应用使用其推送平台,只要一个手机中有A、B俩个应用使用了统一推送平台,如果其中一个应用A被强制停止,则另一个应用B就可以通过发送自定义广播激活A应用启动后台服务。

你可能感兴趣的:(android 程序强制停止后服务后台启动运行 ---- 不同程序间相助 使用第三方服务)