繁体   English   中英

构建片段backStack进行推送通知

[英]Build fragment backStack for push notification

当用户点击状态栏上的通知时,我正在使用FCM显示片段。

当前的应用程序流程就是这个MainActivity (片段A->片段B->片段C)。

但是,当用户点击通知时(无论应用程序是否在运行),我想显示Fragment C,同时仍提供适当的后退导航,因此在按后退键时,再次按下时,用户将进入Fragment B和FragmentA。

我知道活动具有用于此目的的TaskStackBuilder ,但是在显示通知之前我找不到用于构建片段的backStack任何东西。

知道如何建立堆栈吗? 我尝试将所有片段添加到事务中,然后在添加片段C之前提交,但是我得到了IllegalStateException: commit already called在第二次提交时IllegalStateException: commit already called了提交

手动处理片段堆栈很困难。 我建议您检查一下Navigation Component 它将允许使用适当的后向堆栈处理( NavDeepLinkBuilder类)构建显式深层链接。

显示您的代码。 可能您必须为每个片段创建新事务并提交操作。 使用此方法添加A,B和C:

    public void addFragmentOnTop(Fragment fragment) {
        getSupportFragmentManager()
            .beginTransaction()
            .replace(R.id.container, fragment)
            .addToBackStack(null)
            .commit();
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM