Я получаю странную ошибку:
Фатальное исключение: исключение NSInvalidArgumentException *** - [_ NSXPCDistantObject methodSignatureForSelector:]: протокол подключения не установлен для обслуживания имени com.apple.nsurlsessiond "
Эта проблема возникает только в iOS 9. Согласно трассировке стека ошибка запускается вызовом -[UIApplication _sendWillEnterForegroundCallbacks]
.
Thread : Fatal Exception: NSInvalidArgumentException
0 CoreFoundation 6485512008 __exceptionPreprocess
1 libobjc.A.dylib 6833323904 objc_exception_throw
2 CoreFoundation 6485511824 -[NSException initWithCoder:]
3 Foundation 6500536092 -[_NSXPCDistantObject methodSignatureForSelector:]
4 CoreFoundation 6485526892 ___forwarding___
5 CoreFoundation 6484495532 _CF_forwarding_prep_0
6 CoreFoundation 6485141004 __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__
7 CoreFoundation 6485138988 _CFXRegistrationPost
8 CoreFoundation 6485138348 ___CFXNotificationPost_block_invoke
9 CoreFoundation 6485554212 -[_CFXNotificationRegistrar find:object:observer:enumerator:]
10 CoreFoundation 6484354836 _CFXNotificationPost
11 Foundation 6500543948 -[NSNotificationCenter postNotificationName:object:userInfo:]
12 UIKit 6577878356 -[UIApplication _sendWillEnterForegroundCallbacks]
continues ...
Итак, похоже, что когда приложение войдет на передний план, какой-то зарегистрированный наблюдатель пытается повторно подключиться к nsurlsessiond
через RPC и не удается? Я выполняю сеанс переноса фона, используя NSURLSession
, но я не могу воспроизвести его, поэтому я не уверен, связано это или нет.
Кто-нибудь видел эту проблему раньше? Есть ли что-нибудь, что я могу сделать, чтобы решить эту проблему?