当尝试在iOS 11设备上调试UNNotificationServiceExtension时,Xcode无法正确附加到Extension进程,并且该进程本身会被Springboard拦截,然后才能拦截并处理收到的通知。
当运行Xcode创建的Scheme来调试Extension时,总是会发生这种情况。正常调试应用程序时(使用“主”应用程序方案),NotificationServiceExtension运行正常并拦截通知(但无法调试)。
以下日志显示在设备控制台上:
错误SpringBoard [com.acme.notification]扩展将因启动缓慢而被终止
错误SpringBoard Hub连接错误错误Domain = NSCocoaErrorDomain Code = 4097“连接到名为com.acme.notification的服务”UserInfo = {NSDebugDescription =连接到名为com.acme.notification的服务}
有时,Xcode在收到通知时也会弹出错误对话框(调试器应该附加的时候):
无法附加到pid:“{PID NUMBER}”
确保“com.acme.notification”尚未运行,{USER}有权对其进行调试。
请注意,在运行iOS 10的设备上运行正常,Extension有机会处理通知,调试器将正常附加和中断扩展代码。
我在这里缺少什么东西,或者这是我应该向Apple报告的错误?任何人有相同的行为?