【问题标题】:FirebasePushNotificationPlugin(xamarin) - events not fire when app in background(android)FirebasePushNotificationPlugin(xamarin) - 当应用程序在后台时不会触发事件(android)
【发布时间】:2020-10-25 11:55:38
【问题描述】:

我将这个 plugin 用于我的 Xamarin Forms 应用程序 (android)。 当应用程序处于后台时,任何事件都不会触发。当应用程序在前台时,事件起作用。但是应用程序是后台任何事件都不会触发,应用程序刚刚打开。但我需要将消息参数传递给应用程序。我不确定这是否是一个错误,也许这是我的错误。我将不胜感激任何帮助。 我使用这个 api 发送消息:

https://fcm.googleapis.com/fcm/send

这是我的有效载荷:

  {
 "data": {
    "id_serv" : "12",
    "id_group" : "1",
    "click_action":"Accept"
  },
  "notification" : {
     "body" : "test",
      "title" : "test"
 },
 
 "priority": "high",
  "condition": "'g1' in topics"
 }

我还订阅了所有可用事件 - OnNotificationAction、OnNotificationOpened、OnNotificationReceived。 我也尝试在 android 级别订阅,但这也不起作用。有什么帮助吗?

【问题讨论】:

标签: android firebase xamarin.forms push-notification xamarin.android


【解决方案1】:

当应用程序在后台 firebase 使用他们的通知系统时,您的代码不会被调用。

如果您希望调用您的代码,您需要仅通过数据对象传递数据,而不是使用通知对象。

所以你的通知对象需要是这样的:

“数据”:{ “id_serv”:“12”, “id_group”:“1”, "click_action":"接受", “身体”:“测试”, “标题”:“测试” },

“优先级”:“高”, “条件”:“主题中的'g1'” }

更多信息在这里:FB Receive massages

【讨论】:

【解决方案2】:

我对xamarin一无所知,但是在16以上的firebase版本中,您只是在应用程序运行时收到推送通知数据, 当应用程序被杀死时:点击通知后,android打开你的第一个活动包(额外数据),你必须获取这些数据并使用它们,所以调试你的应用程序并在点击通知后检查你的第一个活动包

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-20
    • 1970-01-01
    • 1970-01-01
    • 2017-03-04
    • 2011-07-08
    • 1970-01-01
    • 2020-07-29
    相关资源
    最近更新 更多