目录

前言 1.1

安卓保活概览 1.2

相关基础知识 1.3

安卓保活技术 1.4

安卓保活代码 1.5

附录 1.6

参考资料 1.6.1

前言

安卓保活技术

最新版本：v0.4

更新时间：20240312

简介

整理安卓保活技术相关基础知识，常见的安卓保护技术方案，以及相关代码和实例。

源码+浏览+下载

本书的各种源码、在线浏览地址、多种格式文件下载如下：

HonKit源码

crifan/android_keep_alive_tech: 安卓保活技术

如何使用此HonKit源码去生成发布为电子书

详见：crifan/honkit_template: demo how to use crifan honkit template and demo

在线浏览

安卓保活技术 book.crifan.org

安卓保活技术 crifan.github.io

离线下载阅读

安卓保活技术 PDF

安卓保活技术 ePub

安卓保活技术 Mobi

版权和用途说明

此电子书教程的全部内容，如无特别说明，均为本人原创。其中部分内容参考自网络，均已备注了出处。如发现有侵权，请通过邮箱联系我 admin 艾特 crifan.com，我会尽快删除。谢谢合作。

各种技术类教程，仅作为学习和研究使用。请勿用于任何非法用途。如有非法用途，均与本人无关。

鸣谢

感谢我的老婆陈雪的包容理解和悉心照料，才使得我crifan有更多精力去专注技术专研和整理归纳出这些电子书和技术教程，特此鸣谢。

其他

作者的其他电子书

本人crifan还写了其他150+本电子书教程，感兴趣可移步至：

crifan/crifan_ebook_readme: Crifan的电子书的使用说明

关于作者

关于作者更多介绍，详见：

关于CrifanLi李茂 – 在路上

crifan.org，使用署名4.0国际(CC BY 4.0)协议发布 all right reserved，powered by Gitbook最后更新： 2024-03-13 09:16:51

安卓保活概览

安卓保活概览

安卓应用，处于某些需要，希望：长期将app在后台运行，这个过程叫做：保活=保证长期存活

而如何实现（安卓app的）保活，有很多技术。

不过安卓保活，对于普通用户来说：

少数情况：是我们希望的

比如，允许微信、支付宝常驻后台

多数情况：不是我们希望的

我们不想要：其他各种（加了保活技术的安卓）app始终存在后台，占用资源耗电

crifan.org，使用署名4.0国际(CC BY 4.0)协议发布 all right reserved，powered by Gitbook最后更新： 2024-03-12 09:48:10

相关基础知识

相关基础知识

TODO：

【整理】安卓系统进程优先级和oom_adj、oom_score_adj

名词术语

名词术语

LMK=Low Memory Killer

FC=Force Close

FC对话框 = FC dialog= FC popup

ANR=Application Not Responding=程序无响应

保活相关基础知识

保活相关基础知识

进程被杀的场景

正常=自然的情况

被LMK杀死

oom_adj

oom_score_adj

成为空进程，缓存进程后被杀

用户主动

最近任务 -> 一键清理

最近任务 -> 上滑

使用Setting -> forceStop

第三方应用杀进程（如猎豹，360等）

特殊情况 = （应用出现异常）被系统杀死

出现FC或者ANR

crifan.org，使用署名4.0国际(CC BY 4.0)协议发布 all right reserved，powered by Gitbook最后更新： 2024-03-12 09:49:32

安卓保活技术

安卓保活技术

TODO：

【整理】安卓保活技术基础知识

思路和目的

安卓保活技术 思路和目的

保活

降低被杀可能

提升进程优先级== 降低adj值

微信和支付宝：实现了adj值为负数或0 == 创建系统级别的进程

应该是底层native实现的某种黑科技，需要逆向才有机会搞懂

一种可能：利用了系统漏洞来保活

复活

被杀后重启服务=重新拉起服务

安卓保活技术/手段/方案

安卓保活技术/手段/方案

需要用户参与=需要引导用户操作

【整理】安卓保活技术：引导用户开启手机白名单

【整理】安卓保活技术：申请加入电池优化白名单

保活

防止被杀

防止用户主动杀

【整理】安卓保活技术：多任务列表窗口加锁

【整理】安卓保活技术：多任务列表窗口隐藏App

提升进程优先级

UI页面

【整理】安卓保活技术：一像素

Service

【整理】安卓保活技术：前台Service的导航

【整理】安卓保活技术：后台无声音频

【整理】安卓保活技术：无通知的前台服务

【整理】安卓保活技术：START_STICKY和START_REDELIVER_INTENT

属性

【整理】安卓保活技术：属性persistent

提高活跃度？间隔性唤醒 ？

【整理】安卓保活技术：账户同步

【整理】安卓保活技术：应用自启动权限

【整理】安卓保活技术：监听系统事件广播

【整理】安卓保活技术：监听系统事件广播之ACTION_TIME_TICK

【整理】安卓保活技术：监听第三方静态广播

【整理】安卓保活技术：WakeLock

【整理】安卓保活技术：心跳机制

【整理】安卓保活技术：socket长连接监控被杀重启主进程

其他

【整理】安卓保活技术：Instrumentation

【整理】安卓保活技术：弹出悬浮窗

【整理】安卓保活技术：无障碍服务

【整理】安卓保活技术：WorkManager

复活=被杀后重启服务

【整理】安卓保活技术：双进程守护

【整理】安卓保活技术：JobScheduler定时任务

【整理】安卓保活技术：AlarmManager

【整理】安卓保活技术：WorkManager

【整理】安卓保活技术：多个app关联唤醒

【整理】安卓保活技术：第三方服务SDK

【整理】安卓保活技术：Service的onDestroy和onTaskRemoved

【整理】安卓保活技术：进程Service/Provider互绑

【整理】安卓保活技术：AIDL矩阵互保

【整理】安卓保活技术：SIGCHLD信号和用am startservice重启被杀掉的进程

【整理】安卓保活技术：腾讯TIM的进程永生技术

【整理】安卓保活技术：setsid和用am startservice重启被杀掉的进程

crifan.org，使用署名4.0国际(CC BY 4.0)协议发布 all right reserved，powered by Gitbook最后更新： 2024-03-12 09:51:15

安卓保活代码

安卓保活代码

crifan/KeepAliveAndroid

Github

https://github.com/crifan/KeepAliveAndroid

crifan.org，使用署名4.0国际(CC BY 4.0)协议发布 all right reserved，powered by Gitbook最后更新： 2024-03-12 09:58:46

附录

附录

下面列出相关参考资料。

crifan.org，使用署名4.0国际(CC BY 4.0)协议发布 all right reserved，powered by Gitbook最后更新： 2024-03-12 09:34:47

参考资料

参考资料

crifan.org，使用署名4.0国际(CC BY 4.0)协议发布 all right reserved，powered by Gitbook最后更新： 2024-03-12 09:34:29