Swift:如何从服务器接收远程通知?

时间:2016-06-07 14:37:40

标签: swift push-notification appdelegate nsnotificationcenter

这是一个普遍的问题,但我似乎无法找到答案,我不知道该寻找什么。我有一个后端,当有人喜欢你发布的东西时发送通知,我能够发送它并且应用程序收到它。但是,我不确定如何创建用于处理通知的UI。我的第一个猜测是,由于在AppDelegate中接收通知触发了didReceiveRemoteNotification fetchCompletionHandler,我应该尝试获取该函数中的当前VC并从那里添加图形元素。但是,我读到这不是你应该做的事情,你应该使用NSNotifications。问题是我不确定我是如何理解如何通过NSNotificationsCenter表达远程通知。

你推荐什么?

1 个答案:

答案 0 :(得分:0)

NSNotification是Observer设计模式的一部分。

就像一个“广播”。

首先,您必须注册应该监听事件的每个组件:

Await

接下来,当您有要广播的消息时,请发布具有相同名称的通知:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(myFonction) name:@"Notif name" object:nil];
    //swift
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(myFonction), name: "notif name", object: nil)

当您发布通知时,将在[[NSNotificationCenter defaultCenter] postNotificationName:@"Notif name" object:nil]; //swift NSNotificationCenter.defaultCenter().postNotificationName("notif name", object: nil)

上调用方法myFonction