当应用程序不在前台时忽略NavDeepLinkBuilder目标 [英] NavDeepLinkBuilder destination ignored when app not in foreground

查看:28
本文介绍了当应用程序不在前台时忽略NavDeepLinkBuilder目标的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用NavDeepLinkBuilder为推送通知生成挂起的意图,以在特定目标打开应用程序。

        return NavDeepLinkBuilder(this)
                .setComponentName(MainActivity::class.java)
                .setGraph(R.navigation.main_navigation)
                .setDestination(destinationId)
                .setArguments(args)
                .createPendingIntent()

当应用程序处于前台时,通知将导航到NavDeepLinkBuilder构建的挂起意图中设置的目的地。👍

但是,当应用程序不在前台时,通知将仅导航到MainActivity并忽略NavDeepLinkBuilder中设置的目的地。👎

注意:挂起意图和通知是在扩展Firebase MessagingService的服务中构建的。

推荐答案

可以,如果您使用FireBase,您可能会遇到这种行为。问题是当你的应用程序在后台时,你的onMessageRecived()方法从不触发。在这些情况下,您将不会在onMessageRecived()而是在MainActivity()中收到Firebase消息。只需在onCreate()方法中检查您的意图,如我在编辑块中我自己的question中所述

这篇关于当应用程序不在前台时忽略NavDeepLinkBuilder目标的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆