在onClick()通知打开customactivity之后,我无法回到mainactivity

时间:2018-07-12 16:33:57

标签: android android-activity notifications

在我的应用程序中,我具有MainActivity,并假设另一个CustomActivity。通常我的应用以mainActivity开始,没关系。

但是我正在发送Firebase通知,我想要的是在单击通知后打开CustomActivity。

我认为我已经解决了这个问题,因为它可行:

  if (getIntent().getExtras() != null) {
        startActivity(new Intent(getApplicationContext() , CustomActivity.class));
        finish();
    }

因此,当点击通知时,它将启动CustomActivity。

但是,在我的CustomActivity中,我的顶部有一个后退箭头,这当然是行不通的,因为CustomActivity是我的开始活动,并且应用程序不知道返回的位置...

请问该怎么办?如果他单击后退箭头,我想将用户带回MainActivity。

如果在运行应用程序时轻按了通知,则箭头将起作用,因为MainActivity生命周期仍处于打开状态,但是在关闭应用程序并首先启动customActivity时,该箭头将不起作用。

2 个答案:

答案 0 :(得分:2)

您可以在清单中使用ParentActivity标签,如下所示-

<activity
        android:name=".CustomActivity"
        android:label="@string/title_activity_display_message"
        android:parentActivityName=".MainActivity" >
        <!-- Parent activity meta-data to support 4.0 and lower -->
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".MainActivity" />
    </activity>

答案 1 :(得分:2)

如果您是通过从MainActivity发布的代码重定向到CustomActivity的,则可以简单地不要finish()使其进入CustomActivity下的活动堆栈,并且后退箭头确实可以正常工作。