【问题标题】:How to prevent your application process from killing by system如何防止您的应用程序进程被系统杀死
【发布时间】:2017-08-05 09:48:28
【问题描述】:

我创建了一个应用程序,我想让它稳定可靠,因此在卸载之前它永远不会停止工作,我知道系统会在内存不足时杀死应用程序。当系统杀死你的应用程序时究竟会发生什么?它是否会从应用程序中占用所有堆内存并使其无法正常工作?或维护当前安装在手机上的所有应用程序的应用程序流程?如何确保我的应用程序不会停止工作并且系统保持其优先级?

谢谢

【问题讨论】:

  • 你想保留你应用的后台服务还是整个应用,例如任务、窗口、活动等等?
  • AFAIK Android 会杀死您的应用程序在后台运行的 Linux 进程,这当然足以恢复一些内存并破坏应用程序。注意:这部分需要对 Linux 有一定程度的了解。

标签: java android performance process


【解决方案1】:
  1. 了解 Android 服务
    服务是一个应用程序组件,代表一个应用程序的 希望在不与 用户或提供功能供其他应用程序使用。
  2. 创建你的 AndroidService

  3. 设置 START_STICKY 模式 如果该服务的进程在启动时被杀死(返回后 从 onStartCommand(Intent, int, int)),

    @覆盖 public int onStartCommand(Intent intent, int flags, int startId) {

    return START_STICKY;
    

    }

【讨论】:

    猜你喜欢
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 2014-05-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多