.cancelAllLocalNotifications是否清除推送通知?

时间:2016-02-10 21:14:18

标签: ios swift parse-platform

我正在从我的解析服务器发送通知,我想在用户打开应用时清除它们。我知道可以通过以下方式清除本地通知:

UIApplication.sharedApplication().cancelAllLocalNotifications()

似乎不适用于推送通知。但是,

PFInstallation.currentInstallation().badge = 0;

用于清除徽章通知。

我正在发送来自Parse的通知:

    Parse.Push.send({
      where: pushQuery,
      data: {
        alert:  request.params.message,
        sound: "default",
        badge: 1
      }
    },{
      success: function(){
        console.log(" about to notify friend");
        response.success("yes");
      },
      error: function (error) {
        response.error("nope");
      }
    });

知道如何清除Parse发送的通知(非本地通知)吗?

3 个答案:

答案 0 :(得分:0)

.CancelAllLocalNotifications不会从通知中心删除通知。

用于取消预定的本地通知,如开发人员库所示:

  

取消所有预定的本地通知的传递。

我认为将badgeNumber设置为0足以清除通知中心的通知。只要确保每次应用程序打开时都这样做。

答案 1 :(得分:0)

`cancelAllLocalNotifications` 

- 只会清除iLikePancakes所说的所有本地通知。

如果要取消通知中心的所有通知,首先需要将徽章编号增加到1或更高,然后将其设置为0.在AppDelegate didFinishLaunching中使用它确保它是每次都打电话

答案 2 :(得分:0)

.cancelAllLocalNotifications()仅用于取消预定的本地通知。

  

取消所有预定的本地通知的传递。

请参阅此link

对于推送通知,您需要在应用程序启动时将badge设置为0.