2015-10-20 16 views
8

Abbiamo un incidente nella nostra app iOS riportato da crashlytics:Crash in iOS: XPC API Uso improprio

Crashed: XPC API Uso improprio: Tentativo di inviare un messaggio in attesa di una risposta a (com.apple.networking. connection.0x46bf35a0)

l'analisi dello stack è:

Thread : Crashed: XPC API Misuse: Attempt to send a message expecting a reply to (com.apple.networking.connection.0x46bf35a0) 
0 libxpc.dylib     0x35cc534a _xpc_api_misuse + 41 
1 libsystem_c.dylib    0x35ba49e5 __strlcpy_chk + 48 
2 libxpc.dylib     0x35cb5f75 _xpc_serializer_create + 158 
3 libxpc.dylib     0x35cb5ea1 xpc_connection_send_message + 60 

e 'accaduto sotto iOS 9.0.2 su un iPhone 5. non siamo in grado di riprodurre l'incidente e non abbiamo idea di come avvia il debug/il fixing. Sembra che siamo not alone with this.

Forse qualcuno qui ha qualche idea.

+0

Lo stesso incidente per me in natura su iPhone 6 Plus con iOS 9.1.0. –

risposta

7

Ci sono molti bug aperti su questo problema: rdar: // 21832853 è l'errore originale, insieme a rdar: // 22860899 e rdar: // 22874333, entrambi su OpenRadar.

Penso che questo sia causato da un codice di rete basato su C in SCNetworkReachability e stia cercando di parlare con il sistema iOS VPN, presumibilmente per determinare se uno è connesso o al demone di sfondo che viene usato per Richieste NSURLSession, ma non ne sono sicuro. Sfortunatamente, CFNetwork non è open source e le fonti libdispatch per 10.11 (il più vicino possibile a iOS 9) non sono ancora state pubblicate, quindi non posso nemmeno iniziare a indovinare cosa sta facendo il codice di rete sbagliato.

In entrambi i casi, non penso che riuscirai a risolvere il problema. Detto questo, supponendo che abbia ragione riguardo alla causa principale, potresti essere in grado di riprodurlo eseguendo Network Link Conditioner e attivando e disattivando la modalità aereo ripetutamente. Vale la pena provare, comunque.