2012-11-27 89 views
1

后,在我的应用程序有以下活动的堆栈:重塑整个活动堆栈的应用程序被杀害

A -> B -> C 

每个活动都有一个广播接收器作为一个内部类,在其onCreate()IntentFilter注册,并在onDestroy()注销。

此模式在正常情况下运行良好,但在应用程序死亡时失败。 当应用程序被杀后重新打开时,只有最后一个活动(上例中的C)重新打开,其广播接收器将是唯一注册的活动。如果我终止了C活动,那么B活动将被重新创建(通过其onCreate()),以此类推A活动。

只要应用程序在被杀后重新打开,是否可以重新创建整个活动堆栈而不是最上面的活动?

谢谢;)

回答

0

解决方案可能是扩展应用程序上下文,并在那里注册你的接收器。然后,无论哪个活动开始,您的应用程序都会注册其IntentFilters。

+0

我已经在扩展应用程序(尽管出于其他原因),但我需要在这里保持广播接收器在活动中,并在每个活动中调用所有广播接收器。 – Venator85

相关问题