Android 如果正在运行,则返回调用活动,否则是否启动新活动?

Android 如果正在运行,则返回调用活动,否则是否启动新活动?,android,android-activity,Android,Android Activity,我有一个执行OAuth授权、令牌更新等的活动 我从好几个地方叫它。完成后,它通常会启动我的“默认”活动(用户拥有的项目列表),但在某些情况下(例如编辑项目时),我希望它返回调用活动 因此,我想检查调用活动是否正在运行。如果是,我想返回呼叫活动。否则我想发布一个新的(我已经可以了) TL;DR:如何检查呼叫活动是否仍在运行?您可以使用自己的实现来管理所有活动。只需创建接口的实现: public class CustomApplication extends Application { @

我有一个执行OAuth授权、令牌更新等的活动

我从好几个地方叫它。完成后,它通常会启动我的“默认”活动(用户拥有的项目列表),但在某些情况下(例如编辑项目时),我希望它返回调用活动

因此,我想检查调用活动是否正在运行。如果是,我想返回呼叫活动。否则我想发布一个新的(我已经可以了)


TL;DR:如何检查呼叫活动是否仍在运行?

您可以使用自己的实现来管理所有活动。只需创建接口的实现:

public class CustomApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        registerActivityLifecycleCallbacks(new CustomActivityLifecycleCallback());
    }
}

如果您没有
finish()
调用活动,那么当被调用的活动完成时,它们将返回到该活动。是的。但是如果我完成了
finish()
,如果我不启动一个新的应用程序,它将结束我的应用程序。是的,这是我的想法,不要完成调用者活动,然后完成oAuth活动,这样它将完成它的工作并关闭,这将显示下面的活动,即调用者活动(您没有完成)。我明白。但在大多数情况下,我想完成之前的活动,因为我没有任何打算返回到它-我想启动一个新的,而不是。我想做的是找出我是否已经
finish()
ed了调用方。好了,现在我知道了:)我还以为你想要另一件事:)