Android面试系列文章2018之进程保活篇
1.Android进程优先级
前台>可见>服务>后台>空
前台:与当前用户正在交互的Activity所在的进程。
可见:Activity可见但是没有在前台所在的进程。
服务:Activity在后台开启了Service服务所在的进程。
后台:Activity完全处于后台所在的进程。
空:没有任何Activity存在的进程,优先级也是最低的。
2.Android进程的回收策略
1.Low Memory Killer:通过一些比较复杂的算法的评分机制,对进程进行打分,然后将分数高的进程判定为bad进程,杀死并释放内存。
2.OOM_ODJ:根据它的阀值来判断进程优先级所被使用的。
3.进程保活方案
a.利用系统广播拉活。
b.利用系统服务机制拉活。onStartCommand方法,返回START_STICKY。
c.利用native进程拉活(5.0之后失效)。
d.利用JobScheduler机制拉活。
e.利用帐号同步机制拉活。