0

正如我在APNS文档中看到的,如果应用程序未运行,但是它们的优先级较低,则在didreceiveremotenotification中处理无声通知。所以有时我的iOS应用程序不会收到静默通知。APNS:如果应用程序未运行,接收非静默通知?

确实的iOS表明非无声通知,如果应用程序没有运行(而不是在前台,而不是在后台)?并且非静默通知会触发didreceiveremotenotification?如果应用程序是在activeinactive状态

回答

2

对于非无声通知,

didreceiveremotenotification将被触发。不是当terminatedsuspended状态。 在terminatedsuspended状态情况下,当上通知用户应用程式会抽头通过调用didFinishLaunchingWithOptionslaunchingOptions将具有有效载荷作为Dictionary推出。

如果您提供UNNotificationServiceExtension,则iOS会在接收通知时调用didReceive(_:withContentHandler:),您可以使用它在远端通知交付给用户之前自定义远程通知的内容。 阅读:https://developer.apple.com/documentation/usernotifications/unnotificationserviceextension

如果你提供UNNotificationContentExtension那么,iOS将调用didReceive上收到通知,你可以用它定制的负荷通知的内容。

阅读:https://developer.apple.com/documentation/usernotificationsui/unnotificationcontentextension

P.S:

正常通知不能在用作替代/工作,以无声的通知,仅仅因为你不能在应用程序终止状态用无声的通知。

无声的通知旨在与在服务器上更新内容同步客户端应用程序。由于这可以在没有明确的用户交互的情况下完成,可以使用无声通知。

无声的通知必须包含content-available键不能包含警报,声音或徽章钥匙。 阅读:https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/CreatingtheNotificationPayload.html

在正常通知的情况下,没有办法隐藏通知横幅/警报/声音,除非手机上的用户设置这样说。

+0

标准通知将始终显示出来,另外,如果应用程序是暂停或终止状态? – xyqw

+0

是的好友:)如上所述,应用状态只会修改通知如何移交给您的应用。通知将始终显示了根据通知(如警报或横幅)没有办法被出现用户停止它在用户的设备设置编程 –

+0

感谢你;)... – xyqw

相关问题