我想做一个安卓后台的 service 用来做 app 的推送,但是发现只要 app 退出之后, service 也被系统杀死了,但我发现微信的服务可以常驻后台,并且清理内存(小米)之后,还能够继续保持后台运行。我目前已经尝试过如下:
1. 修改 onStartCommand 的返回值为 START_STICKY
2. 采用 startForeground 将 service 设置成 foreground
但都做不到一直常驻后台的效果?有研究过相关的朋友能否指点一二,不胜感激。
1
wy315700 2015-08-19 14:33:58 +08:00
remote service
|
2
onceyoung OP @wy315700 指的是在 mainfest 里改 process name 让 service 成为 remote service 吗?这个方法我尝试过,页没有用。
|
4
onceyoung OP @wy315700 但是服务和 app 不都被杀掉了吗,这些事情应该也没有机会再去做了吧。我观察到微信的服务在清理之后确实是被杀掉了的,不过它自己自动重启了又,是不是用了类似守护进程一类的技术呢?
|
6
snowspace 2015-08-20 09:33:58 +08:00
如果是内部使用的话加一个常驻的通知。操作系统目测会把常用的应用加入到白名单,可以手动加进去。
或者如楼上所说监听各种事件唤醒,电量变化等等。 |