Sal*_*van 5 service android system kill-process android-activity
我有一个activity和一个应用程序service.如果我在运行的activity同时杀死service它也会被杀死.对我来说,服务不会被杀死是非常重要的.如何使当系统杀死(或者我通过清除"最近的应用程序"列表杀吧)activity的service仍然有效,直到它完成它的工作?提前致谢!
对我来说非常重要的是服务不会被杀死
您的进程可以随时出于任何原因被终止,基于用户活动(最近的任务列表、第三方任务管理器、设置中的“强制停止”等)或基于操作系统需求(系统 RAM 变低) )。你无法阻止这一点。
您可以采取一些步骤来最大程度地减少操作系统自行决定终止进程的可能性,例如startForeground()在服务上使用,但这确实会阻止用户对应用程序的进程执行用户想要的操作。
我正在显示该服务的一个窗口,因此如果服务停止,该窗口就会消失。
据推测,如果用户通过最近的任务列表、任务管理器等明确删除您的应用程序,则用户希望您的窗口消失。当然欢迎您在文档中向用户建议这将产生的任何负面影响。
也欢迎您尝试将该服务置于单独的进程中。我的理解是,这对 Android 4.4 上的最近任务列表没有帮助,尽管它可能对早期版本的 Android 有帮助。这是否对第三方任务管理器有帮助可能取决于管理器,并且这对设置中的“强制停止”没有帮助。这也意味着您将不得不处理 IPC、在主进程和服务进程同时运行时增加系统 RAM 消耗等问题。