美文网首页
Some points 3. - 进程与应用生命周期

Some points 3. - 进程与应用生命周期

作者: Jinjins1129 | 来源:发表于2017-02-13 22:51 被阅读0次

    读官方文档 activities/Processes and Application Lifecycle总结

    Android中应用的进程的生命周期不由应用直接控制,而是由组成部分的的重要性来综合决定。为决定哪些进程应该在低内存时被kill,Android根据运行在进程中的组件和组件的状态综合,列出了以下重要层级:

    1. foreground process - 用户正在做什么所需要的进程,当进程包含以下情形:
    • 运行着正在与用户交互的activity,已经执行了 onResume()
    • BroadcastReceiver 的 onReceive() 方法正在执行
    • 有 Service 正在执行它的回调方法onCreate(),onStart(),onDestroy()
    1. visible process - 用户当前知道的工作所在的进程,被kill可能会影响用户体验。以下情形:
    • 正在运行着对用户可见但是不在前台的activity(即onResume()被调用)
    • 运行着foregroud service,service.startForeground()
    • 托管着系统正在运行的用户知道功能的特定服务,比如动态壁纸、输入法等
    1. service process - 持有着通过startService()启动的service,尽管这些进程不对用户直接可见,但通常执行着用户关心的操作,例如后台上传或下载。Service运行了很长时间(30mins+)后重要性会被降级,其托管进程会降级到cache process。有助于避免泄露缓存或其他消耗太多RAM的 service 的长时间运行。

    2. cache process - 系统会随时kill这些进程来释放内存。activities执行了onStop()并返回。

    相关文章

      网友评论

          本文标题:Some points 3. - 进程与应用生命周期

          本文链接:https://www.haomeiwen.com/subject/jjoaittx.html