Android 如何知道调用onStart()的原因

Android 如何知道调用onStart()的原因,android,android-activity,Android,Android Activity,我的问题很简单,我如何知道调用onStart()方法是因为创建了我的活动,还是因为它是由另一个活动通过意图启动的 我想这不是特别的onStart()方法,而是创建活动时调用的任何活动生命周期方法。谢谢。每当您的活动由另一个活动创建或启动时,请使用额外的意图进行检查: public static final EX_INFO = "from_another"; private boolean isFromAnotherActivity = false; 当您通过意图开始另一项活动时,只需通过以下方

我的问题很简单,我如何知道调用
onStart()
方法是因为创建了我的活动,还是因为它是由另一个活动通过意图启动的


我想这不是特别的
onStart()
方法,而是创建活动时调用的任何活动生命周期方法。谢谢。

每当您的活动由另一个活动创建或启动时,请使用额外的意图进行检查:

public static final EX_INFO = "from_another";
private boolean isFromAnotherActivity = false;
当您通过意图开始另一项活动时,只需通过以下方式传递意图:

intent.putExtra(EX_INFO, true)
从onStart方法中读取信息

Intent intent = getExtraIntent();
isFromAnotherActivity = intent.getBooleanExtra(EX_INFO, false);

onCreate->onStart->onResume。Genrally创建活动时遵循此过程。如果您希望收到由意图调用的活动的通知,请使用调用活动的putExtra传递任何变量,然后检查它在被调用活动的getExtra中是否具有某些值。

您可以尝试使用堆栈跟踪:我想根据是否创建了应用程序在我的活动中执行某些操作,而不是从另一个活动开始-我不只是想知道它的知识。看看这张图片,也许你会明白。