我正在研究Android应用程序的C2DM通知,并且希望在用户单击通知时打开我的应用程序。这没有问题,这很容易。 问题是,当应用程序启动时(点击通知后),如果某些活动先前已打开,启动的活动似乎已添加到实际活动堆栈中,那么与我的应用程序的复杂性有关的问题是什么有很多活动,一些有静态字段)。在意图发起活动之前清除活动堆栈
为了解决这个问题,2个解决方案将是美好的:
1)不要调用特定的活动,但只是问到我的应用程序打开(比如当我点击主屏幕上的应用程序图标:打开如果应用程序已关闭,或者只是在应用程序打开(但在后台)时才将应用程序置于前面,则为第一个活动)。
2)清除所有活动堆栈并启动特定活动。
但我没有成功做两种解决方案之一。即使使用意向标志(如http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_CLEAR_TOP)。
有人可以帮我解决这个问题吗?
感谢
PS:对不起,我的英文不好,我来自Belgium :-)
android:launchMode =“singleTask”似乎解决了我的问题。非常感谢你 – ValentinTaleb 2011-12-14 16:29:54