============问题描述============
我需要实现一个功能,Android程序在运行后启动一个service服务,这个service服务是需要一直运行的,正常退出程序后,这个服务还是存在的,正常运行。
但是,如果我用安卓优化大师或者其他工具强制停止后,或者比如魅族的清除当前运行程序后,这个service服务就不再启动了。
有没有一种方法,可以保证这个service一直运行,不被强制杀掉或者能够驻留在内存中,类似于微信和微博或者百度输入法那样,进程不被清除,怎么实现?
============解决方案============
1
可以设置广播注册,
网络启动时 自动启动service
手机启动时自动启动service
如果完全不给其他工具杀掉,禁止杀进程,那恐怕要去写JNI注册到底层系统Service了。不知道可能实现。
============解决方案============
2
一般service被强制杀掉都会重启的貌似
============解决方案============
3
除非你注册成系统服务 在init.r可以实现 当然 这就需要编译真个系统了
你可以设置被杀死后重启服务 这个稍微流氓一点 作为第三方不被杀显然不可能
============解决方案============
4
用电源管理锁定service,应该是可以实现的,但是要处理好释放电源锁的问题,要不然耗电非常厉害
时间: 2024-11-09 01:46:30