Android进程保活的常用方法

本文详细阐述了Android应用如何通过提升优先级、系统调整、防止被kill、依赖关系保持和相互拉起等多种方法实现进程保活,涉及系统API和优先级管理的深入解析。

Android进程保活的常用方法

进程保活和去保活,一直是一个热门的讨论话题,先看一下保活方法

方法1:APP内部提升优先级

Perceptible(用户可以感受到其运行的(如后台运行的music playback),
1)在服务的oncreate添加 startForeground(1, new Notification()); (这种需要常驻通知,如mtkloger、music等)
2)还有另外一种方法,就是am.setProcessForeground/setProcessImportant(mForegroundToken, pid, true)直接设置其是前台的)(这个不会有通知,Android S需要SET_PROCESS_LIMIT权限)
Persistent(系统预置应用 + android:persistent=“true”) 常驻进程,优先级比前台还高,一般不建议

方法2:针对adj的调整(系统)

computeOomAdjLSP的最后面修改
adj = ***;//修改adj
adjType = “***”;//修改adjType
// keep it out of the cached vaues.
state.setCurAdj(psr.modifyRawOomAdj(adj));

方法3:不让系统kill掉(系统)

  1. lmkd里面加入拦截,不杀死某个应用
  2. 系统API forcestop、kill加入拦截
  3. Process.kill**等sendSignal中加入拦截、或者更底层的拦截

方法4:依赖关系保活(系统或者app都可以使用, Android上Foreground/Visible等高优先级

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值