Android通知导航回退

Android通知导航回退,android,android-activity,android-notifications,Android,Android Activity,Android Notifications,嗨,团队,我在通知后台遇到了一个问题 假设我有4个活动A1、A2、A3、A4 我有一个关于A2的通知,假设我们在A4中,通过A1->A2->A3->A4,现在我收到通知,在点击通知的同时,我打算点击A3,当我在这个场景中按下后,我的导航堆栈被清除,应用程序被关闭 但在这种情况下,我的预期行为是,它应该转到A4和A3、A2、A1,然后按倒车按钮 代码 清单文件 <application android:allowBackup="true" android:icon="@mi

嗨,团队,我在通知后台遇到了一个问题

假设我有4个活动A1、A2、A3、A4

我有一个关于A2的通知,假设我们在A4中,通过A1->A2->A3->A4,现在我收到通知,在点击通知的同时,我打算点击A3,当我在这个场景中按下后,我的导航堆栈被清除,应用程序被关闭

但在这种情况下,我的预期行为是,它应该转到A4和A3、A2、A1,然后按倒车按钮

代码

清单文件

 <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:theme="@style/AppTheme.NoActionBar" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".FirstActivity" >
    </activity>
    <activity
        android:name=".SecondActivity"
        android:label="@string/title_activity_second"
        android:parentActivityName=".FirstActivity"
        android:theme="@style/AppTheme.NoActionBar" >
    </activity>
    <activity
        android:name=".ThirdActivity"
        android:label="@string/title_activity_third"
        android:theme="@style/AppTheme.NoActionBar" >
    </activity>
</application>

您对
addParentStack()
使用了错误的参数。您应该将从通知中打开的活动视为参数,而不是其父级。因此,请将代码更改为:

stackBuilder.addParentStack(SecondActivity.class);
如果您的通知是A2,它将始终打开A2,而不是A3

android:parentActivityName
是在API级别16中引入的。如果在旧手机上运行此功能,则必须将父活动定义为元数据:

<activity
        android:name=".SecondActivity"
        android:label="@string/title_activity_second"
        android:parentActivityName=".FirstActivity"
        android:theme="@style/AppTheme.NoActionBar" >
 <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value=".FirstActivity" />
</activity>

显示通知创建代码和AndroidManifest.xml
<activity
        android:name=".SecondActivity"
        android:label="@string/title_activity_second"
        android:parentActivityName=".FirstActivity"
        android:theme="@style/AppTheme.NoActionBar" >
 <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value=".FirstActivity" />
</activity>