Отправьте уведомление:
[[NSNotificationCenter defaultCenter] postNotificationName:@"MyCacheUpdatedNotification" object:self];
Получите его:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(cacheUpdated:) name:@"MyCacheUpdatedNotification" object:nil];
Действуйте в соответствии с ним:
- (void)cacheUpdated:(NSNotification *)notification {
[self load];
}
И избавьтесь от него:
[[NSNotificationCenter defaultCenter] removeObserver:self];
Версия Swift для того же:
Всякий раз, когда вам нужно опубликовать уведомление:
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "UpdateAccepted"), object: self)
На контроллере, где вы хотите получить уведомление:
override func viewDidLoad(_ animated: Bool) {
super.viewDidLoad(true) {
NotificationCenter.default.addObserver(self, selector: #selector(updateAccepted(notification:)), name: NSNotification.Name(rawValue: "UpdateAccepted"), object: nil)
}
deinit {
NotificationCenter.default.removeObserver(self, name: NSNotification.Name(rawValue: "UpdateAccepted"), object: nil)
}
@objc func updateAccepted(notification: Notification) {
handleRefresh()
}
Зарегистрируйтесь для получения профиля push-уведомлений и настройте его в своем приложении. Вот ссылка для этого PushNotification (обратите внимание, что вам понадобится какой-то сервер или что-то еще, собирающее идентификаторы push-уведомлений устройства, чтобы иметь возможность отправлять уведомления на эти устройства)
Далее, предполагая, что вы используете Windows Server или что-то другое .net-совместимое, как на вашем сервере есть хороший C # api, написанный для отправки push-уведомлений на сервер Apple (если у вас есть сертификат и зарегистрированные для него устройства, которые вы сохранили на своем сервере), здесь есть демонстрации того, как его использовать, довольно круто вот ссылка С # push-уведомление src
Вот и все ... Я дал вам быстрое решение с использованием технологии .Net, если вы используете что-то еще, вы можете просмотреть, есть ли решения, доступные в платформу, которую вы используете, я уверен, что вы что-то найдете, если нет, вы всегда можете сделать свою собственную :)