【问题标题】:How to get FCM Push notification data received when app backgrounded, but clicked when foregrounded如何在应用程序后台接收FCM推送通知数据,但在前台点击
【发布时间】:2021-09-08 17:40:48
【问题描述】:

我已经在文档中处理了这两种情况,它们是:

1/ 如果应用在前台,则处理 onMessageReceived

2/ 如果在应用程序处于后台或被终止时触发推送通知,则在启动器活动中处理有效负载附加内容。

但是我遇到了这样一种情况,当应用程序在后台时收到推送通知(我只是将它们留在那里),然后我打开应用程序并正常使用该应用程序。然后我向下滑动通知托盘,然后单击等待通知,然后应用程序就恢复了,我不知道在这种情况下有效负载会去哪里。

我还检查了有效负载附加功能是否通过getIntent().getExtras() 传递到当前活动onResume(就像它对启动器活动所做的那样),但它没有来自通知的附加负载。请注意,启动器 Activity(在我的情况下是 SplashScreen)早已不复存在。应用只是恢复当前的 Activity。

无论如何我可以处理这种类型的点击吗?或者这是一个死胡同?

感谢大家的宝贵时间。

【问题讨论】:

    标签: android firebase push-notification firebase-cloud-messaging


    【解决方案1】:

    将您的 Activity 的启动模式更改或添加到 singleTop。这可以在 AndroidManifest.xml 中通过将 android:launchMode="singleTop" 添加到 <activity> 元素来完成。

    更多信息here

    【讨论】:

    • 感谢您的建议,但没有奏效。我不知道 FCM 行为是否允许附加功能......如果应用程序恢复,则“跳转”到当前 Activity,而不仅仅是启动新的启动器 Activity。
    • 抱歉回复晚了,我现在的活动是android:launchMode="singleTop",也和其他人一起尝试过,但没有成功。
    猜你喜欢
    • 1970-01-01
    • 2020-06-21
    • 1970-01-01
    • 2017-12-09
    • 1970-01-01
    • 2021-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多