像Swiftkey,Locker Master这样的应用程序如何在从后台堆栈中移除后仍能保持进程处于活动状态?
他们也不会使用粘性通知。
更新: - 我需要让我的过程保持活力。但在我的情况下,服务是活跃的,但进程被杀死。
答案 0 :(得分:0)
他们都有一个或多个未绑定的背景service。
要杀死这些服务,您可以进入设置 - >应用 - >运行。
然而,其他应用程序或系统可以通过发送系统范围的消息(意图)随时重新启动服务。在大多数情况下,它由
重新启动在Swiftkey案例中,当需要显示键盘时,它将由Android OS启动。
编辑:您可以通过将此服务添加到AndroidManifest中的服务定义来指定服务在远程进程中运行
android:process="process_name_here"
然而,没有一项服务无法被杀死并且可以永久运行。如果资源运行不足或服务运行很长时间,Android操作系统可能会开始查杀您的服务。要解决此问题,您可以创建一个forground运行服务,但它需要显示通知。它也可以被任务管理器杀死,就像你提到的那样。您应该开始关注如何保存它的状态,以便以后能够重新启动它。