TaskStackBuilder addParentStack()方法不起作用

我需要像这样的流程:当通知出现,用户点击它,activityB应该启动,比用户点击后退按钮它应该去activityA,我的问题是,当用户点击通知和activityB正在lanched,堆栈是空,如果用户点击后退按钮,应用程序的行为就像按下主页按钮,点击启动器图标后,启动启动器活动,流程就像第一次启动。

另外看到谷歌的官方文件如何正确使用通知与保存活动更好的导航体验,但没有帮助。

这是显示通知的代码

private fun sendNotification() { val mBuilder = NotificationCompat.Builder(this) .setContentTitle(name) .setContentText(messageBody) val resultIntent = Intent(this, activityB::class.java) val stackBuilder = TaskStackBuilder.create(this) stackBuilder.addParentStack(activityA::class.java) stackBuilder.addNextIntent(resultIntent) val resultPendingIntent = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT) mBuilder.setContentIntent(resultPendingIntent) mNotificationManager.notify(mId, mBuilder.build()) } 

这里是清单文件

  <activity android:name=".activityB" android:parentActivityName="activityA" /> <activity android:name="activityA"/> 

我不明白,我错过了什么