Android 如何保证Service在后台不被kill?
来源:互联网 发布:财务分析需要哪些数据 编辑:程序博客网 时间:2024/06/16 04:57
1、onStartCommand方法,返回START_STICKY
结论:手动返回START_STICKY,亲测当service因内存不足被kill,当内存又有的时候,service又被重新创建,比较不错,但是不能保证任何情况下都被重建,比如进程被干掉了、、、、
2、提升service优先级
结论:在AndroidManifest.xml文件中对于intent-filter可以通过Android:配“1000”这个属性设置最高优先级,同时适用于广播。
3、提升service进程优先级
Android中的进程是托管的,当系统进程空间紧张的时候,会依照优先级自动进行进程的回收。Android 将进程分为6个等级,它们按优先级顺序由高到低依次是:
1)前台进程(FOREGROUND_APP)
2) 可视进程(VISIBLE_APP)
3) 次要服务进程(SECONDARY_SERVER)
4)后台进程(HIDDEN_APP)
5) 内容供应节点(CONTENT_PROVIDER)
6) 空进程(EMPTY_APP)
结论:如果在极度极度低内存的压力下,该service还是户被kill掉,并且不一定会restart
4、onDestroy()方法里重启service
结论:当使用雷系口口管家等第三方应用或是在setting里-应用-强制停止时,APP进程可能就直接被干掉了,onDestroy方法都进不来,所以还是无法保证、、
5、终极方案:启动一个native进程,每一分钟检查椅子啊service是否启动
注:无需root权限 依赖:am命令,proc文件系统
0 0
- Android 如何保证Service在后台不被kill?
- 保证service在后台不被kill
- 如何保证Android Service在后台不被Kill,或者被Kill后重启
- 如何保证service一直在后台运行
- Android 开发之Service 探索如何保证Service不被杀死或被kill之后自动重启
- Android 开发之Service 探索如何保证Service不被杀死或被kill之后自动重启
- android如何保证service不被杀死
- android如何保证service不被杀死
- android如何保证service不被杀死
- android如何保证service不被杀死
- android如何保证service不被杀死
- android如何保证service不被杀死
- android如何保证service不被杀死
- Android 如何保证Service不被杀死
- 如何让android的service一直在后台运行?
- 如何让android的service一直在后台运行
- 模拟Android App在后台被kill
- Android-如何让service 不会被第三方kill
- Shell 输入/输出重定向
- Linux 软件包管理
- QT 5.0.2 QThread
- RESTLET框架学习
- jasperreport导出PDF中文不显示的问题
- Android 如何保证Service在后台不被kill?
- oracle常用命令
- xsl获取参数中的当前节点无效
- Extjs Tabpanel 重新打开后不显示 deferredRender定义解释
- Linux操作命令(一)
- 使用Leopard Jdbc
- DNA大分子是什么样子?
- 最详细的hadoop2.2.0集群的HA高可靠的最简单配置(转)
- Linux网络管理