我正在开发一个使用UNNotificationServiceExtension的应用程序。大多数时候(大约90%)我的扩展运行正常,在后端建立连接,然后显示通知。但似乎有时扩展根本不会运行,系统会在通知中显示原始消息。这一切为什么要发生?所有通知都明确包含设置为1的可变内容键。
发布于 2017-10-29 04:50:44
我在实现UNNotificationServiceExtension时遇到了同样的问题。我的问题在于加载额外内容的时间限制
您的扩展有一个有限的时间(不超过30秒)来修改内容和执行contentHandler块。如果您没有及时执行该块,系统将调用扩展的serviceExtensionTimeWillExpire()方法,给您最后一次执行该块的机会。如果不这样做,系统会向用户显示通知的原始内容。
如果您想确保是同一个问题,您可以实现以下方法,并以某种方式更改内容
func serviceExtensionTimeWillExpire()通过添加UNNotificationServiceExtension的存活秒数,我发现有时系统甚至不会给你这30秒。
https://stackoverflow.com/questions/46991122
复制相似问题