我有一个导航图,其中有活动A作为可能的目的地之一。用户通常会像这样someView.findNavController().navigate(ZZZ.actionBBB(someParam))
到达那里(情况1)。当用户从A返回时,一切都很好(例如,如果托管屏幕具有ViewPager,并且用户位于第N个选项卡上,则用户将看到第N个选项卡)。可以通过深层链接(案例2)达到相同的活动A。在这种情况下,当用户从A退回时,应用程序退出。
我想改为显示家长活动。具体来说:
对于情况1,我希望行为与情况1中所述
对于case2(假设应用未运行),我希望A退出新的父活动
对于case2(假设应用正在运行),我希望A退出现有的父活动
有什么主意如何做到这一点而又不会被黑客入侵?
更新:到此为止(虽然不是真正的解决方案):
override fun onBackPressed() {
val upIntent: Intent? = NavUtils.getParentActivityIntent(this)
checkNotNull(upIntent) { "No parent activity intent" }
TaskStackBuilder.create(this)
.addNextIntentWithParentStack(upIntent)
.startActivities()
finish()
}