考虑一下:活动和其生命周期
- 活动A
活动B
活动C对启动器图标,当点击
活动下开始。活动B由活动A开始 - 没什么特别的。但是活动C应该仅由应用程序本身启动(而不是点击或类似的东西),例如广播。
问题:
当活动C由应用程序自动启动,当我按下这个活动主页按钮,当我在lanuncher点击图标(露面主要活动 - A),它为我活动C.如果我按这个活动的BACK按钮,那么我可以去活动A,没有问题。
如何解决这个问题?杀死活动C,在HOME按钮上按下,还是以其他方式来做到这一点?
考虑一下:活动和其生命周期
活动B
活动C对启动器图标,当点击
活动下开始。活动B由活动A开始 - 没什么特别的。但是活动C应该仅由应用程序本身启动(而不是点击或类似的东西),例如广播。
问题:
当活动C由应用程序自动启动,当我按下这个活动主页按钮,当我在lanuncher点击图标(露面主要活动 - A),它为我活动C.如果我按这个活动的BACK按钮,那么我可以去活动A,没有问题。
如何解决这个问题?杀死活动C,在HOME按钮上按下,还是以其他方式来做到这一点?
在您的活动A清单android:launchMode="singleTask" android:clearTaskOnLaunch="true"
和其余活动放android:clearTaskOnLaunch="false"
,这将解决您的问题。希望这会帮助你。
只需在您的AndroidManifest.xml中添加android:noHistory="true"
到<activity>
Activity的元素。
设置为true
为android:noHistory将使活动不会留下历史痕迹。它不会留在任务的活动堆栈中,所以用户将无法返回到它。
谢谢。你已经解决了我的问题。这是工作。 – rootpanthera 2013-04-20 10:32:06
高兴地帮助你。 :) – kamil 2013-04-20 10:35:59