让我们假设一个场景,其中有一个聊天应用程序,我打开它,然后按下主页按钮。现在应用程序在后台运行但未被杀死。我可以收到任何即将发送的消息的通知徽章或弹出窗口吗? 例如:如果有新消息,我的应用程序会产生一些声音或徽章,如果它没有被杀死并在后台运行。
我问这个问题,因为我有疑问。我在网上发现,应用程序只能在Apple预定义的几个列举的任务列表中运行,而不是像android这样的所有情况。
请告诉我在这种情况下是否可以收到有关新邮件的通知。 (没有服务器,推送通知使用)。更清楚我想要的是一旦app在上述场景中就有本地通知。请告诉我它是否可行。
提前致谢。
答案 0 :(得分:0)
您可以使用VoIP推送通知来实现此目的。您可以在后台运行一些代码以在后台处理通知,然后在您的应用决定播放本地通知时。
然而,从6月开始苹果不再允许开发人员以这种方式使用API,除了WhatsApp
因为我认为是。
您需要使用PushKit
:
func pushRegistry(_ registry: PKPushRegistry, didReceiveIncomingPushWith payload: PKPushPayload, forType type: PKPushType)
func voipRegistration() {
let voipRegistry: PKPushRegistry = PKPushRegistry(queue: DispatchQueue.main)
voipRegistry.delegate = self
voipRegistry.desiredPushTypes = [PKPushType.voIP]
}