项目需要,这两天研究了一下Service长驻后台的方法与实现。网上此类文章很多,本文只是一个总结。大概有以下几种:

1、onStartCommand()中return START_STICK

2、onStartCommand()中startForeground()

3、onDeStroy()中startService()

4、注册BroadcastReceiver监听系统广播(如TIME_TICK)onReceive中判断Service是不是还在,不在就重新启动Service

5、签名升级为系统APP

6、双进程守护,同时开启两个进程,两个进程中循判断对方是否还在,不在的话立即启动对方,最理想的是NDK用C++实现Linux的父子进程相互依赖

7、启动一个FloatingWindow放在屏幕上(如果不想别人看见,就把窗口宽高设置为1px*1px)

8、onTrimMemmory()中优化内存

9、闹钟事件循环判断Service是否在运行

这些方法在不同版本的系统中表现情况不同,所以需要自己去测试一下。不过我感觉呢,还是onTrimMemmory()是最需要花时间学习一下的,内存优化,这才是最好的解决方法

杀不死的Service相关推荐

  1. Android创建杀不死的Service

    在Android开发中我们经常会遇到一些特殊的需求需要让我们的服务常驻内存,但是会遇到各种清理软件或者用户在设置中手动停止程序的情况而导致我们的服务被异常的终止掉.虽然没有办法保证绝对的常驻内存,但是 ...

  2. docker容器杀不死_了解如何停止,杀死和清理Docker容器

    docker容器杀不死 In the previous article 'learn how to create and start Docker containers', we discussed ...

  3. app之 杀不死的进程

    有些需求要求app进程杀不死 我觉的扯再多都是没用的  不如 给你们看看~~~人家是如何实现的 demo是可以用的 我已经测试成功了 感觉很厉害哦~~好佩服的哦~~~哦哦哦~~~    常驻进程 An ...

  4. Android_常驻进程(杀不死的进程)

    Android常驻进程,就是要让进程在内存中永远存在,让进程保活,不被杀死.可能这时都会喷,这不是流氓软件吗?刚接触android的时候,我也是认为这是很流氓的做法,可是慢慢发现很多场景(应用),要为 ...

  5. gitlab进程杀不死解决

    kill gitlab 进程 方法一: ps -ef |grep gitlab |awk '{print $2}'|xargs kill -9 方法二: gitlab-ctl stop 两种方式都尝试 ...

  6. android 后台杀不死的进行实现

    1. 要想永远不被系统kill掉,那你只能是升级成系统应用(例如launcher,systemUI这些应用怎么杀,也是杀不死的). 我们写的当然不是系统应用,只能说,在很大概率上不被杀死.也就是说也不 ...

  7. Linux下使用kill杀不死Mysql进程一直杀不死的问题解决方案

    完美解决用kill -9 pid mysql进程的方法 使用以下几个命令可以进行查看 lsof -i pid 查看指定进程id的状态 ps -ef | grep mysql 查看mysql的端口号状况 ...

  8. Android APP 提高进程服务优先级 常驻内存 服务杀不死

    首先明确,国内定制的系统(小米,华为,OPPO等)都实现了 无论自启或提升进程优先级的策略都能被杀死,而对于用户量大的APP(如微信)和系统级别APP 系统有做白名单;抛开那些定制系统,还是有很多原生 ...

  9. 杀不死的人狼——我读《人月神话》(四)

    <<==上一节 ===== 四.没有银弹,或人狼杀不死 ===== 人狼这个动物很奇怪,皮肉坚实还是自疗系的,所以要么砍它不动,要么杀它不死.这种动物如同习得(传说中的)金钟罩功夫,刀枪不 ...

最新文章

  1. install vim plugin local file offline
  2. 【转载】变量的存储类别
  3. 2016-2017-20155329 《Java程序设计》第7周学习总结
  4. 【编程思想】什么是微服务
  5. API接口应该如何设计?
  6. English course (6)
  7. ubuntu通过iptables设置某一个ip网段禁用所有端口
  8. javaScript 中创建json/转换字符串为json
  9. ios 文本翻转_反转文字的方法_深入浅出 iPhone 开发 (使用 Swift4)_iOS视频-51CTO学院...
  10. python将xml写入excel_Python实现将xml导入至excel
  11. word柱状图垂直轴数值设定_EXCEL中的图表坐标轴数值 如何设置
  12. Mysql内容查找替换
  13. 想成为CSS大师,你倒是学啊 -30个资源大推荐
  14. Windows7 换XP 字体 (QQ字体,桌面字体) 为宋体
  15. Windows脚本初探之VBScrip的MsgBox函数
  16. Stronger Data Poisoning Attacks Break Data Sanitization Defenses
  17. 解题笔记(39)——过河问题
  18. 国盛源投资量化买卖一定会挣钱吗?量化买卖怎样挣钱的?
  19. 15瓶可乐,其中有一瓶过期了,找出有毒的可乐的问题
  20. 虚拟光驱文件bin/cue到iso的转换

热门文章

  1. Vue.js高效前端开发知识 • 【目录】
  2. 常见SEO顾问服务内容
  3. java将图片变灰、去噪、反色
  4. Win7 x64 修复IIS安装失败记录
  5. 广告roi怎么计算公式_ROI是什么意思,怎么计算的?
  6. 阿里系云上离线数仓简单介绍
  7. CF1019B:交互题+二分
  8. XPath谓语多条件使用and和or
  9. 一个JAVA程序员成长之路分享
  10. java 面试题——feign