如何杀死我的应用程序而不杀死它启动的服务(调试)

时间:2011-05-09 08:25:48

标签: android

我的android应用程序在第一次运行时启动服务。该服务处理网络连接。

如果设备没有可用空间,我的应用程序可能会被杀死,但服务仍然有效(除非在某些极端情况下,我知道)。当应用程序重新启动时,它将需要根据服务状态恢复它状态(没问题)。

这是我的问题:如何杀死我的应用程序,而不是关联服务?这仅用于调试目的,我想测试状态是否正确恢复。

当我尝试使用adb,ddms或高级任务杀手杀死该应用时,该服务也会被杀死。

有什么想法吗?

谢谢,

代码:我开始这样的服务:

final Intent intent = new Intent(this, Service.class);
mStartServiceResult = startService(intent);
mIsBound = bindService(intent, mConnection, 0);

并使用startForeground / setForeground来阻止我的服务被杀死。

1 个答案:

答案 0 :(得分:2)

  

如果设备没有空间,我的应用程序可能会被杀死,但服务仍然有效(除非在某些极端情况下,我知道。)

没有。您的部分或全部活动可能会被销毁,这会使服务运行。或者您的流程可能会终止,在这种情况下,您的服务也会关闭。

  

如何杀死我的应用程序,但不能关联相关服务?

这是不可能的,抱歉。