我正在使用一个使用UNNotificationServiceExtension的应用程序。大多数时候(类似于90%)我的扩展程序正确运行,在后端建立连接,然后显示通知。但似乎有时扩展程序根本不运行,系统会在通知中显示原始消息。为什么会这样?所有通知都必须包含设置为1的mutable-content键。
答案 0 :(得分:1)
我在实施UNNotificationServiceExtension
时遇到了同样的问题。我的问题在于加载额外内容的时间限制
您的分机数量有限(不超过30秒) 修改内容并执行contentHandler块。如果你这样做 如果没有及时执行该块,系统会调用您的 extension的serviceExtensionTimeWillExpire()方法给你一个 最后一次执行该块的机会。如果不这样做,系统会显示 通知的原始内容给用户。
如果您想确保它是同一个问题,您可以实施以下方法并以某种方式更改内容
func serviceExtensionTimeWillExpire()
通过添加UNNotificationServiceExtension的秒数,我发现有时系统甚至不会给你30秒。