1.16 进程

less than 1 minute read

1.16.1 优先级

  • 前台进程
    • 进程持正在与用户交互的Activity。
    • startForeground()
    • 进程持有一个BroadcastReceiver,这个BroadcastReceiver正在执行它的 onReceive() 方法
  • 可见进程
    • 进程持有一个Activity, 但处于#onPause后且未调用#onStop, 如弹窗
    • 持有Service且Service与可见(前台)Activity绑定
  • 服务进程
    • startService()
  • 后台进程
    • 不可见Activity
  • 空进程
    • 无任何四大组件

1.16.2 保活

  • Service & BroadcastReceiverintent-filterandroid:priority设置优先级, 最大值1000
  • startForground
  • Service#onStartCommond()返回START_STICKY, 被kill掉之后可能重建
  • #onDestroy()启动service
  • 监听系统广播, 启动Serivce
  • Application加上Persistent

1.16.3 LMK

  • 当系统剩余空闲内存低于阈值(入147MB), 则从ADJ大于或等于响应阈值的进程中, 选择ADJ值最大的进程参考图

参考