firebase - 在 firebase_messaging dev14 用户点击通知时如何打开屏幕(背景)
问题描述
我想知道点击通知时如何打开新屏幕。就我而言,如果我点击它,它什么也不做......我希望它(取决于通知)打开应用程序并打开一个新的给定屏幕
这是我现在发送的 json:
'{"notification": {"body": "${body}", "title": "${title}", "click_action": "FLUTTER_NOTIFICATION_CLICK"}, "priority": "high", "to": "MYTOPIC"}';
解决方案
您可以使用此库生成命名路由,然后在单击通知时执行 onLaunch() 方法,您可以从深度链接中提取路径并将其传递给导航器。
现在假设您有 2 个屏幕用户屏幕和用户配置文件屏幕。您将在路由器类中定义两条路由。
MaterialRoute(page: UsersScreen, path : '/users'),
MaterialRoute(page: UserProfileScreen, path : '/users/:userId?'),
在通知数据有效负载中,您可以将数据链接作为 /users 或 /users/:userId? ,提取从终止状态触发的 onLaunch 数据并将其传递给您的导航器。您可以查看他们的示例以更好地理解命名路由。
推荐阅读
- java - 在 Java 中比较两个对象与 int 和 string 参数
- javascript - 为什么我的可注入角度服务类没有按预期保存类变量?
- java - 编写 Classes 类然后实现它们
- javascript - 是否可以同时更改克隆和原始元素?- jQuery
- java - 在运行时将类从一个更改为另一个
- sql - 获取 Max(Amount) 和关联的类型
- reactjs - 在反应 js 中切换显示/隐藏 li 上的“活动”类
- avro - 使用 Kafka binder 重播 Spring Cloud Stream 中的死信队列中的消息
- c++ - 带有可变参数的 std::function 列表如何工作
- c - 尝试通过数组打印用户输入时出现意外输出