退出儿童活动并返回家庭活动 - 生命周期是什么?

时间:2012-08-04 01:50:46

标签: android android-activity push-notification lifecycle

[警告:此问题不包含任何代码,因此可能看起来不太有趣。]

应用具有以下结构(基本上是3级活动:home-> category-> item):

--- Home Activity (TabHost)
------- Tab1: category 1 activity, contains item list, 
              onclick item will start "viewItemActivity" to view an item
------- Tab2: category 2 (as above)
------- Tab3: category 3 (as above)

当收到推送通知时,点击通知消息将单独启动viewItem Activity。默认情况下,如果用户在其手机上点击“返回”键,则此viewItem活动将退出,用户将返回到手机主屏幕。

有没有办法通过相应的类别标签将用户转发到家庭活动,而不是回到手机主屏幕?

一般方法/想法将不胜感激。

我不确定viewItem活动中的lifecircle / method的哪一部分需要被覆盖。以及如何编写它以避免随机影响应用程序的启动过程/堆栈。

对于这个覆盖的方法(onStop!?),我正在考虑检查主页选项卡活动是否正在运行,如果没有则启动,然后传递一些意图来显示相应的选项卡,这是正确的方法吗?)

非常感谢!

2 个答案:

答案 0 :(得分:1)

当通知到达时,您可以启动Home Activity,在其onCreate中,您可以启动itemActivity。这样,在堆栈中,您将在项目活动下方拥有HomeActivity,按下后退按钮将转到主页活动。

答案 1 :(得分:1)

在每项活动中覆盖onBackPressed(),然后开始您的家庭活动。要使Tab1活动不在堆栈中,请通过MANIFEST文件将其定义为没有历史记录:

 <activity android:name=".activity...." android:noHistory="true"></activity>