我正在使用应用程序,其中当任何其他用户在app中发布数据时,我正在使用本地通知。当我的应用程序运行时,它也能正常工作并显示通知。但当我终止我的应用程序和任何其他用户发布数据时,我无法收到通知。我的应用程序终止时有没有办法调用通知功能?
UILocalNotification *notification = [[UILocalNotification alloc] init];
notification.fireDate = [NSDate dateWithTimeIntervalSinceNow:5];
notification.alertBody = [NSString stringWithFormat:@"one person vote your post"];
[notificationArray addObject:@"one person vote your post"];
notification.timeZone = [NSTimeZone defaultTimeZone];
notification.soundName = UILocalNotificationDefaultSoundName;
[[UIApplication sharedApplication] scheduleLocalNotification:notification];
答案 0 :(得分:2)
如果您从服务器发送其他人帖子(使用Web服务),您应该实施推送通知而不是本地通知。
本地通知:您需要在使用应用时指定启动时间。
在您的情况下,当其他用户发布时您的应用未运行。所以你没有得到触发事件。
答案 1 :(得分:0)
我认为您正在寻找的是使用远程通知,但仍在执行本地代码,然后重新发送本地通知以通知用户。
Apple已经意识到这一点,并添加了Silent Remote Notifications
。
有关详细信息,请参阅此处:VoiP Push notifications best practices
我最近在Security.stackexchange.com上提出了一个问题,社区发布了一个非常全面的答案: WhatsApp and end-to-end encryption,我强烈建议您仔细阅读,因为我认为它是在类似的地方,WhatsApp似乎已经实现了它。