Android MarsDaemon实现进程及Service常驻
前段时间。就讨论过关于怎样让Service常驻于内存而不被杀死,最后的结论就是使用JNI实现守护进程,可是不得不说的是,在没有改动系统源代码的情况下,想真正实现杀不死服务,是一件非常难的事情。眼下除了白名单的方式。也好像没有发现有一款APP能做到无论怎么搞它都能自己主动重新启动...
近期在GitHub上发现了一个比較有意思的轻量级库:MarsDaemon,进行一些简单的配置,就能够实如今android上实现进程常驻,在系统强杀下或360安全卫士等软件下,都无法真正杀死进程。
当然了。在华为的pad上试了一下。手动在程序管理里面停止应用,并未自己主动重新启动。可是通过一些安全卫士的软件kill掉进程之后,还是能够自己主动重新启动的。
先不说这个能不能真正的实现杀不死服务,能做到这一步就已经适用于大部分的APP的需求了,所以还是值得一看的,有兴趣的童鞋还能够去研究一下底层实现过程~
先来回想一下之前关于怎样使用JNI实现守护进程:http://blog.csdn.net/yyh352091626/article/details/50542554
事实上核心思路差点儿相同。就是守护进程。该库支持的Android系统为2.3~6.0,差点儿适用全部的Android手机了。包含三星、华为、魅族、小米、联想等。
MarsDaemon库Demo下载地址:http://download.csdn.net/detail/yyh352091626/9468312
详细实现过程例如以下:
一、在Manifest中配置Service。并创建一个和他同进程的receiver,然后在另外一个进程中创建一个Service和一个Receiver。进程1就是须要常驻的进程。进程2放空即可。
二、让我们自己的Application继承DaemonApplication,并重写getDaemonConfigurations进行相关配置。
三、假设不想继承DaemonApplication而直接继承系统的Application或自己定义Application的话的话,在onCreate里面进行初始化。例如以下:
四、利用安全卫士等清理软件Kill掉进程。发现进程自己主动重新启动。
转载于:https://www.cnblogs.com/clnchanpin/p/7392132.html
Android MarsDaemon实现进程及Service常驻相关推荐
- android 充电模式deamon_Android MarsDaemon实现进程及Service常驻
前段时间.就讨论过关于怎样让Service常驻于内存而不被杀死,最后的结论就是使用JNI实现守护进程,可是不得不说的是,在没有改动系统源代码的情况下,想真正实现杀不死服务,是一件非常难的事情.眼下除了 ...
- Android APP 提高进程服务优先级 常驻内存 服务杀不死
首先明确,国内定制的系统(小米,华为,OPPO等)都实现了 无论自启或提升进程优先级的策略都能被杀死,而对于用户量大的APP(如微信)和系统级别APP 系统有做白名单;抛开那些定制系统,还是有很多原生 ...
- Android 保持Service不被Kill掉的方法--双Service守护 Android实现双进程守护
本文分为两个部分,第一部分为双Service守护,第二部分为双进程守护 第一部分: 一.Service简介:Java.lang.Object ↳Android.content.Context ↳an ...
- android进程守护 失效,保持Service不被Kill掉的方法--双Service守护 Android实现双进程守护 1...
本文分为两个部分,第一部分为双Service守护,第二部分为双进程守护 第一部分: 一.Service简介:Java.lang.Object ?Android.content.Context ?and ...
- 保持Service不被Kill掉的方法--双Service守护 Android实现双进程守护 3
第二部分: 做过android开发的人应该都知道应用会在系统资源匮乏的情况下被系统杀死!当后台的应用被系统回收之后,如何重新恢复它呢?网上对此问题有很多的讨论.这里先总结一下网上流传的各种解决方案,看 ...
- [转] Android开发之如何保证Service不被杀掉(broadcast+system/app)
转发:原文链接http://blog.csdn.net/mad1989/article/details/22492519 序言 最近项目要实现这样一个效果:运行后,要有一个service始终保持在后台 ...
- Android应用程序进程启动过程的源代码分析(1)
Android应用程序框架层创建的应用程序进程具有两个特点,一是进程的入口函数是ActivityThread.main,二是进程天然支持Binder进程间通信机制:这两个特点都是在进程的初始化过程中实 ...
- Android开发之如何保证Service不被杀掉(broadcast+system/app)
Android开发之如何保证Service不被杀掉(broadcast+system/app) 序言 最近项目要实现这样一个效果:运行后,要有一个service始终保持在后台运行,不管用户作出什么操作 ...
- Android之四大组件(AIDL Service的使用)
跨进程调用Service(AIDL Service) Android系统中的进程之间不能共享内存,因此,需要提供一些机制在不同进程之间进行数据通信. 在前一篇文章(关于Android中的四大组件(Se ...
最新文章
- java中json重复数据结构_怎么将有JSON中有相同值放在一组?
- 最新3D GAN可生成三维几何数据了!模型速度提升7倍,英伟达斯坦福出品
- 使用Xshell密钥认证机制远程登录Linux
- golang中的goto
- 在控制台中循环录入字符串,输入q时退出。 然后显示一个新的字符(Python)
- Java_输出60的十六进制
- 获取弹出的窗口_Win7系统如何获取设置everyone权限的问题
- 遇见未来 | 超融合如何兼顾企业的“敏态”和“稳态”的业务需求
- 项目管理学习笔记五:项目整体管理
- CarSim仿真快速入门(十四)—CarSim-Simulink联合仿真
- 如何选择一款好的倾斜摄影相机
- 怎么注册tk域名_新.tk域名免费注册教程
- 使用STM32进行Flash地址空间的数据读取
- 如何新建一个ccs工程文件
- 2017,我对自己狠一点,也要对自己好一点
- Python 批量给图片添加水印小工具
- 首个“中国籍”曲妥珠单抗于欧盟获批上市
- 打造铁军团队(王牌军)的核心三点
- OpenStack权威技术认证COA简介及全球实考统计数据
- PHPOK 5.2.009 发布