我在一个从未见过的iOS应用程序上遇到一个奇怪的问题。

当用户在应用程序中时,将通过推送通知。当收到推送通知时,在AppDelegate中触发适当的方法时,我有逻辑绘制一个自定义视图。

但是,如果用户退出应用程序回到主屏幕,则iOS不再显示该应用程序的任何推送通知。我的理解是,这部分是在操作系统级别处理的。它应该自动设置徽章编号并显示一个弹出窗口,用户可以使用该弹出窗口从推送通知中跳入应用程序。

有任何想法吗?

最佳答案

这发生在我身上,因为我从服务器错误地发送了推送。我使用的是Parse,在JSON有效负载上省略了alert键。这是一个cURL脚本,最终对我有用:

#!/bin/sh

curl -X POST \
-H "X-Parse-Application-Id: MY_APP_ID" \
-H "X-Parse-REST-API-Key: MY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
  "where": {
    "userguid": "some-user-id-goes-here"
  },
  "data": {
    "alert": "OH HI THERE",
    "badge": "0",
    "content-available": "1",
    "notificationtype": "SOME_ARBITRARY_KEY"
  }
}' \
https://api.parse.com/1/push

10-08 08:05
查看更多