首页 > 解决方案 > 在 firebase_messaging dev14 用户点击通知时如何打开屏幕(背景)

问题描述

我想知道点击通知时如何打开新屏幕。就我而言,如果我点击它,它什么也不做......我希望它(取决于通知)打开应用程序并打开一个新的给定屏幕

这是我现在发送的 json:

'{"notification": {"body": "${body}", "title": "${title}", "click_action": "FLUTTER_NOTIFICATION_CLICK"}, "priority": "high", "to": "MYTOPIC"}';

标签: firebaseflutterdartfirebase-cloud-messaging

解决方案


您可以使用此生成命名路由,然后在单击通知时执行 onLaunch() 方法,您可以从深度链接中提取路径并将其传递给导航器。

现在假设您有 2 个屏幕用户屏幕和用户配置文件屏幕。您将在路由器类中定义两条路由。

MaterialRoute(page: UsersScreen, path : '/users'),
MaterialRoute(page: UserProfileScreen, path : '/users/:userId?'),

在通知数据有效负载中,您可以将数据链接作为 /users 或 /users/:userId? ,提取从终止状态触发的 onLaunch 数据并将其传递给您的导航器。您可以查看他们的示例以更好地理解命名路由。


推荐阅读