kcfstreamerrordomainssl failed ios ios9 nsurlsession

failed - iOS 9: Bloqueo en-



nsurlsession nsurlconnection http load failed kcfstreamerrordomainssl (2)

Parece que algo que se suscribió previamente a UIApplicationWillEnterForeground notificaciones de UIApplicationWillEnterForeground fue desasignado sin UIApplicationWillEnterForeground suscripción o que la interfaz esperada no está presente.

Comprobaré si hay algún lugar al que su aplicación se haya suscrito a esa notificación, y me aseguraré de que no se suscriba correctamente, y de que se implementen los métodos a los que se hace referencia.

La methodSignatureForSelector en methodSignatureForSelector indicaría que el método que NSNotificationCenter quiere llamar con la notificación no está implementado. Podría ser un método que falta, o un error tipográfico.

Estoy recibiendo un error extraño:

Excepción grave: NSInvalidArgumentException *** - [_ NSXPCDistantObject methodSignatureForSelector:]: no se ha establecido ningún protocolo en la conexión al servicio llamado com.apple.nsurlsessiond "

Este problema solo parece estar ocurriendo en iOS 9. De acuerdo con el seguimiento de la pila, el error se desencadena por una llamada a -[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 ...

Entonces, ¿parece que cuando la aplicación entra en primer plano, algún observador registrado intenta volver a conectarse con nsurlsessiond a través de RPC y falla? NSURLSession una sesión de transferencia en segundo plano utilizando NSURLSession , pero no puedo reproducir esto, así que no estoy seguro de si está relacionado o no.

¿Alguien ha visto este problema antes? ¿Hay algo que pueda hacer para solucionarlo?


Parece un error en iOS descrito aquí: https://forums.developer.apple.com/thread/45651#140745

AFAICT este bloqueo es causado por el soporte de sesión de fondo de NSURLSession. Esto pasa el trabajo a su demonio (nsurlsessiond) utilizando NSXPCConnection (no es parte del SDK de iOS, sino de la API pública en OS X, por lo que puede leer sobre eso allí). NSXPCConnection tiene la noción de conexiones interrumpidas, es decir, la conexión IPC entre el cliente y el servidor se ha roto, pero se puede restablecer. El soporte de sesión en segundo plano de NSURLSession, como todos los clientes de NSXPCConnection, debe manejar estas interrupciones como una cuestión de rutina. Por desgracia, hay un error en la forma en que lo hace. Este error es una condición de carrera que se manifiesta como este accidente. Esperamos arreglar esto en una futura versión del sistema operativo, pero no puedo compartir ningún detalle concreto.