首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AeroGear:如何使用AeroGear服务器向iOS发送无声推送通知?

AeroGear:如何使用AeroGear服务器向iOS发送无声推送通知?
EN

Stack Overflow用户
提问于 2018-06-14 15:10:13
回答 1查看 167关注 0票数 0

我用Pusher创建了无声的推送通知,它可以使用那个JSON:

代码语言:javascript
复制
{
    "aps" : {
        "content-available" : 1
    },
    "acme1" : "bar",
    "acme2" : 42
}

这里重要的是内容-可供1获取它。

我现在的问题是在AeroGear UnifiedPush Server & Docker中使用它,但是当我构造JSON时,我不能把那个键放进去。

我尝试过,但没有成功:

代码语言:javascript
复制
curl -u "c94ab6da-17e1-4c35-b17f-1ab482152a65:57781ef0-9105-440d-b902-217461c0e743"     -v -H "Accept: application/json" -H "Content-type: application/json"     -X POST  -d   '{
     "message": {
      "alert": "Hello from the curl HTTP Sender!","content-available": true  
     }}'     http://localhost:18081/rest/sender

它会返回一个错误:

代码语言:javascript
复制
Unrecognized field "content-available" (class org.jboss.aerogear.unifiedpush.message.Message), not marked as ignorable

文档

如何在iOS中用AeroGear UnifiedPush服务器发送推送通知?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-02 08:39:09

您应该将对象添加到JSON中。完整的消息示例如下:

代码语言:javascript
复制
{
  "message": {
    "alert": "HELLO!",
    "sound": "default",
    "badge": 2,
    "consolidationKey": null,
    "priority": "normal",
    "windows": {
      "type": "tile",
      "duration": null,
      "badge": null,
      "tileType": "TileWideBlockAndText01",
      "toastType": null,
      "images": [
      ],
      "textFields": [
      ],
      "page": "/MainPage.xaml"
    },
    "apns": {
      "title": null,
      "action": null,
      "action-category": "some value",
      "url-args": null,
      "content-available": true,
      "mutable-content": false,
      "localized-key": null,
      "localized-arguments": null,
      "localized-title-key": null,
      "localized-title-arguments": null
    },

    "user-data": {
      "key2": "other value",
      "key": "value"
    },
    "simple-push": "version=123"
  },
  "criteria": {
    "categories": [
      "someCategories"
    ],
    "variants": [
      "someVariantIDs"
    ],
    "alias": [
      "someUsername"
    ],
    "deviceType": [
      "someDevice"
    ]
  },
  "config": {
    "ttl": 3360
  }
}

您可以使用curl命令来测试它。

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

https://stackoverflow.com/questions/50860701

复制
相关文章

相似问题

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