Android 新活动的onStart在父活动的onStop之前调用

Android 新活动的onStart在父活动的onStop之前调用,android,android-fragments,android-activity,lifecycle,robospice,Android,Android Fragments,Android Activity,Lifecycle,Robospice,我有一份申请。我使用startActivity()启动活动 有人能告诉我为什么系统首先调用新活动的onStart(),而不是父项onStop()?这可能吗(没有系统错误) 我找到了答案,但我和片段和使用android支持库并没有任何共同之处。我被卡住了,因为我使用的是RoboSpice,它必须在onStart和onStop中包含正确的同步方法。我不能,因为系统以错误的顺序调用它 我在这个应用程序中也使用了GCM和分析库。如果您已经阅读了onStop,那么只有当当前活动被新的(或以前的)活动替换时

我有一份申请。我使用
startActivity()
启动活动

有人能告诉我为什么系统首先调用新活动的
onStart()
,而不是父项
onStop()
?这可能吗(没有系统错误)

我找到了答案,但我和片段和使用android支持库并没有任何共同之处。我被卡住了,因为我使用的是RoboSpice,它必须在onStart和onStop中包含正确的同步方法。我不能,因为系统以错误的顺序调用它

我在这个应用程序中也使用了GCM和分析库。

如果您已经阅读了onStop,那么只有当当前活动被新的(或以前的)活动替换时才会调用它

要做到这一点,其他应用程序必须启动或恢复。。。否则就会有缺口


当前活动的onPause(我希望)在替换活动的onStart之前被调用

您使用的是tabgroupActivity吗?现在我明白了,第二次、第三次(等等)阅读文档总能带来新的知识
onStop()
是“当用户看不到活动时调用的,因为另一个活动已恢复”我花了很长时间才发现onPause可能比onStop更有用:)是的,在
onPause()
onStop()
之间玩可能会以有趣的方式结束。我知道将RoboSpice的
start()
shouldStop()
放在
onResume()
onPause()
上可能不是一个好主意,但(目前)唯一的办法是在活动之间共享一个RoboManager实例。(对于将来的答案)另外,在onPause()函数的文档中,他们说:“在收到此调用(ndlr“onPause()”)后,您通常会收到对onStop()的以下调用(在下一个活动恢复并显示之后)”。