2014-10-10 13 views
8

Abbiamo incontrato uno strano problema durante l'utilizzo di Unity3D e iOS8. Dopo circa 1 minuto c'è un singhiozzo (talvolta un po 'più piccolo) e non riusciamo a capire perché. Raccolta dei rifiuti?Il singhiozzo di iOS8 + Unity3D

Abbiamo trascorso alcuni giorni cercando di scoprire quale fosse il problema e poi abbiamo creato un progetto demo minimalista in cui si verifica esattamente lo stesso problema.

Il singhiozzo non viene visualizzato su dispositivi iOS 7 o precedenti, non su Android e non nell'editor. Solo iOS8. Abbiamo provato a costruire sia con l'ultima versione di Unity che con l'ultima versione beta di 4.6.

Qualcuno ha un suggerimento su come risolvere questo problema? È un bug in Unity3D?

progetto Demo:

  • Fare clic sul "barra nera" nella prima scena per arrivare alla scena due in cui si verifica il problema.
  • Guardare da vicino i casinò. Dopo circa 1 minuto vedrai che si fermano per un momento e poi saltano in avanti. Come se mancassero alcuni fotogrammi.
  • Il problema non sembra apparire se andiamo direttamente a "scenetwo" dal lancio.

https://github.com/dale/demoproject-hiccup

EDIT 2014/10/20:

Unity stato risposto con questo. "Abbiamo ricevuto altri rapporti su questo problema e sembra essere causato dalla nuova" funzione "di iOS8, in cui il watchdog genera un rapporto di eccezione se la tua app mescola troppo spesso i thread. Stiamo esaminando i modi in cui attenuare/evitare questi report ".

+0

Hai acquistato Unity Pro? Include un Profiler che può farti sapere quale parte consuma maggiormente le risorse. – Raptor

+0

Sì, abbiamo unità pro. Il profiler mostra a malapena qualcosa. Se ce ne sono, mostra sempre diversi motivi. Physics2D.Simulate, Camera.Render, Overhead, ecc. Ecc. – dale

+0

Hai provato su più dispositivi iOS 8 o solo su uno? Se solo uno: si consideri che il dispositivo potrebbe essere difettoso (jailbroken) o potrebbe semplicemente bisogno di un riavvio. Stai creando una versione di debug o di configurazione? Esegui Xcode (debugger) allegato o senza? Prova a creare un build ad hoc, ovvero distribuito tramite testflight per vedere se questo fa la differenza se l'app funziona come un'app "reale". – LearnCocos2D

risposta

1

Unity ha ora risposto con questo.

"Abbiamo ottenuto altre relazioni su questo tema. Sembra essere causato da nuova 'feature' di iOS 8, dove si watchdog genera report di eccezione se la vostra applicazione sta mescolando le discussioni troppo spesso. Stiamo esaminando modi per mitigare/evitare questi rapporti. "