首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用phonegap-plugin-push和FCM通知:如何正确设置内容-可用:1

使用phonegap-plugin-push和FCM通知:如何正确设置内容-可用:1
EN

Stack Overflow用户
提问于 2016-07-20 06:09:58
回答 1查看 3.6K关注 0票数 2

phonegap-plugin-push触发的通知事件处理程序是否必须是push数据对象的第一级子对象?content-available必须是push数据对象的第一级子对象吗?

如果是这样,有没有办法将content-available: 1设置为firebase控制台通知中推送数据对象的第一级子对象?

我已经创建了一个使用cordova CLI的android应用程序,它使用phonegap-plugin-push,并且我正在使用Google Firebase控制台发送推送通知。

当应用程序在前台时,推送通知会按预期工作。如果推送通知到达时应用程序不在前台(例如,通过单击锁定屏幕上的通知打开应用程序),则永远不会调用通知事件处理程序。

我认为问题的原因是content-available: 1additionalData对象中。

我在firebase控制台中看到的唯一输入content-available的地方是“自定义数据”字段。

这是当应用程序处于前台并且在Firebase控制台>通知>高级选项>自定义数据中将content-available设置为1时收到的推送数据对象。

代码语言:javascript
复制
data {
  title: "message title", 
  message: "test message 12", 
  additionalData: {
    content-available: "1", 
    coldstart: false, 
    collapse_key: "com.domain.appname", 
    foreground: true
    }
  }
EN

回答 1

Stack Overflow用户

发布于 2020-06-05 20:11:37

这是我发送到Google API的有效负载。当应用程序在前台、后台或应用程序关闭时,这是有效的。这在Android和IOS中都有效:

代码语言:javascript
复制
{ 
"registration_ids":["device token"],
"content_available": true,
"notification" : {
    "force-start": "1",
    "content-available": "1",
    "no-cache": "1",
    "body":"Test" ,
    "title" : "Test",
    "sound" : "default" ,
    "icon":"default",
    "badge": 56
},
"data": {
    "force-start": "1",
    "content-available": "1",
    "no-cache": "1",
    "body":"Test" ,
    "title" : "Test",
    "sound" : "default" ,
    "icon":"default",
    "badge": 56
},
"priority":10

}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38469353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档