如何防止用户在android中强行停止服务?

时间:2012-02-07 12:55:47

标签: android android-service

我有一个要求,我想在背景中持续运行服务,它不能由用户顶部或它不能通过进入管理应用程序强制停止。有没有办法在用户尝试强制停止服务时收到通知?或以任何方式隐藏我们在Android中的应用程序。

我已经完成了START_STICKY,但它无法正常工作。 有可能在Android系统服务(或系统代码)上编写无法杀死或内核级编码的代码吗?

我的主要标准是我的服务无法被用户杀死

请帮助我

提前致谢

1 个答案:

答案 0 :(得分:2)

首先,如果系统处于低内存状态,则系统可以始终终止托管服务的进程。你服务甚至不会注意到它已被杀死,它甚至不会得到onDestroy()。如果您的服务正在做最终用户直接知道的事情(例如播放音乐),您应该在前台启动该服务(使用startForeground),以使系统在低内存情况下杀死它的可能性降低。

如果某个服务被最终用户或系统杀死,它将在需要时或有可用资源时重新启动。

说完了,按照设计,你想做的事是不可能的。您的标准是基于对Android如何工作的一些误解,或者您的应用程序应该做一些它想要隐藏的最终用户(这是非常有问题的)。