【问题标题】:How to Delete already sent Remote push notification with firebase in iOS?如何在 iOS 中使用 Firebase 删除已发送的远程推送通知?
【发布时间】:2019-02-16 06:35:05
【问题描述】:

我向设备发送推送通知,但需要在 1 小时后删除此已发送的推送通知。我能做到吗?

【问题讨论】:

    标签: ios iphone push-notification apple-push-notifications


    【解决方案1】:

    当服务器使用 APNS 端点通过 APNS 服务器发送您的通知时,APNS 将向您返回一些数据作为有效负载,您将在响应标头中以 apns-id 键的形式获得通知标识符

    apns-id 值存储在服务器端的数据库表中。

    1 小时后,您可以通过在请求标头中传递 apns-id 值向 APNS 发送另一个请求,从而从设备的通知中心删除该通知。

    您也可以设置'content-available' = 1 以使您的删除通知静音。

    更多信息: https://stackoverflow.com/a/55646607/2776008

    【讨论】:

      【解决方案2】:

      哦。好问题。您只能取消计划通知,如果它尚未发送。如果它已经发送给用户,你不能取消。

      但是,如果您不希望非活动用户看到您的推送通知,那么您可以在通知中设置自动过期时间,这些通知会在一定时间后自动删除。

      为了实现这一点,在 Android 上将生存时间设置为以秒为单位的过期时间,而在 iOS 上将其设置为过期日期

      【讨论】:

      • 如何设置 iOS 的“过期日期”?
      • Whatssap 在删除消息时会这样做。这不是一个正确的答案
      【解决方案3】:

      很遗憾,推送通知一旦发送就无法取消。但您始终可以取消提前安排发送的邮件。

      为避免发送推送通知的遗憾,请务必在点击“发送”按钮之前仔细查看。我建议不仅要校对文本,还要检查定位设置。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-01-30
        相关资源
        最近更新 更多