从活动B导航到活动A时的明确意图

时间:2018-06-12 11:55:26

标签: android android-intent deep-linking android-lifecycle

当我参加我的主要活动时,我得到了一个意图,

if (getIntent() != null &&
            LinkReceiver.LINK_INTENT.equals(getIntent().getAction())) {
        Uri appLinkData = getIntent().getData();
        if (appLinkData != null) {
            processIntent(appLinkData);
        }
    }

我在onStart方法中有这个。我使用startActivity()导航到another activity。当我按下我正在进行的第二个活动时,我返回main activity,但意图永远不会变为空。

我尝试在setIntent(null)方法中执行processIntent,我尝试过getIntent.setAction("")getIntent.setData(null)

有没有办法在没有覆盖第二个活动中的onBackPressed()方法的情况下再次打开主活动而没有意图。

1 个答案:

答案 0 :(得分:1)

getIntent()将始终返回Intent已启动的Activity。当您为其他MainActivity致电startActivity()时,为什么不在Activity设置一个标记。当它返回到您的Activity时,您可以检查标志以确定状态并采取相应的行动。

或者,您可以使用startActivityForResult(),这样您就可以从发布的Activity中传回信息。另外,当onActivityResult()完成另一个MainActivity时,Activity方法会调用{{1}}方法,因此您可以设置内部标记或其他内容以确定下一步操作。