有没有一种方法可以测试我的应用程序中是否还有其他活动还活着?我正在寻找停止onDestroy方法中的服务,但只希望这样做,如果没有其他活动从我的应用程序仍然活着在堆栈上。如何在我的应用程序中没有其他活动正在运行时才停止Android服务?
我有呼叫停止主要活动的onDestroy()方法中的服务。这是完美的,除非用户启动我的应用程序,然后在我的应用程序中启动一些活动,然后点击主屏幕并RELAUNCHES我的应用程序,它们将颠覆我的订单,主要活动现在将超出我的应用程序的其他活动。在这种状态下,如果他们点击后退按钮并退出主屏幕,他们将触发onDestroy()方法并终止服务,即使在堆栈上打开了其他活动。我想通过停止服务来避免这种情况,只要我确信我的堆栈上没有其他活动。可能?
这比我第一次想到的更复杂。我意识到我在onDestroy()方法中有条件停止服务的想法并不好,因为那样就不会有任何呼叫来停止服务。因此,我们需要留下一个基本问题:只要应用程序的任何活动仍处于堆栈中,如何才能启动一个服务,该服务将继续运行,但在没有任何应用程序仍处于停止状态时会停止运行? – JohnRock 2010-03-14 00:10:49