iOS 10通知不会出现在锁定屏幕上
问题描述:
我们正在开发iOS应用程序并已实施新的UNNotificationServiceExtension。我们覆盖了iOS 10通知不会出现在锁定屏幕上
func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void)
我们称之为完成处理程序。
我们发送带有“可变内容” = 1
在发展过程中的一切开发设备推动工作的罚款。 但是,当我们在某些设备上向应用商店发布应用时,用户只收到一个通知,而其他所有用户都未收到。
所以我grabed的设备,其中未显示的推送通知,并检查日志:
Sep 16 15:47:15 my-iPhone SpringBoard(UserNotificationsServer)[775] <Info>: Received incoming message on topic my.app.com: <private>
Sep 16 15:47:15 my-iPhone pkd[105] <Info>: match returned 1 plug-ins
Sep 16 15:47:15 my-iPhone accountsd(AccountsDaemon)[104] <Notice>: __48-[ACDServer listener:shouldAcceptNewConnection:]_block_invoke.246 (482) "Idle-exit-preventing transaction ended!"
而且事后没有meaningfull消息。 如果我把同一个推出使用相同的推送证书和有效载荷我的开发设备,那么它出现在屏幕上,并在日志中有更多的消息:
Sep 16 15:27:12 my-iPhone SpringBoard(UserNotificationsServer)[2727] <Info>: Received incoming message on topic my.app.com: <private>
Sep 16 15:27:12 my-iPhone pkd[4005] <Info>: match returned 1 plug-ins
Sep 16 15:27:12 my-iPhone SpringBoard(Foundation)[2727] <Notice>: calling plugIn beginUsing:
Sep 16 15:27:12 my-iPhone pkd[4005] <Info>: assigning plug-in <private>(<private>) 4E733350-8D9A-4A6D-8B44-2A4C888E090C to plugin sandbox
Sep 16 15:27:12 my-iPhone pkd[4005] <Notice>: allowing host 2727 /System/Library/CoreServices/SpringBoard.app/SpringBoard to use plug-in <private>(<private>) uuid=4E733350-8D9A-4A6D-8B44-2A4C888E090C at <private>
Sep 16 15:27:12 my-iPhone SpringBoard(PlugInKit)[2727] <Info>: preparing plug-in <private>(<private>)
如你我的开发设备上很见能够调用扩展,但是在非开发设备上它找到插件(扩展),但不知何故无法启动它。
有人遇到同样的问题吗?
谢谢!
答
所以经过调查发现,iOS 10中有一个错误,导致无法启用一些应用程序扩展。 如果用户在更新到iOS 10之前更新了应用程序,那么新的扩展程序确实为他工作。
Apple发布了带修补程序的iOS 10.0.2(https://support.apple.com/kb/DL1893?locale=en_US&viewlocale=en_US)。 升级到iOS 10.0.2后,我测试了所有扩展,现在它工作正常。