Sto lavorando su un'applicazione AR per la mia azienda e funziona senza intoppi, tranne che su circa un dispositivo su dieci. (Tutto iphone 4 e 4s, 5.1.1+)CMMotionManager non produce alcun .deviceMotions
Quando si esegue questo codice:
CMDeviceMotion *d = motionManager.deviceMotion;
if (d == nil && motionManager.deviceMotionActive && motionManager != nil) {
DLog(@"Device motion is active, but no device motion recieved");
}
otteniamo un blocco solido di "motion dispositivo è attivo, ma nessun movimento del dispositivo ricevuti" su alcuni di i dispositivi, ma sembra del tutto casuale.
Se è vero e il gestore di movimento esiste, l'oggetto .deviceMotion deve restituire un CMDeviceMotion. Ma restituisce solo zero.
Qualcuno ha idea di cosa potrebbe causare questo? Il controllo viene eseguito nel mio
- (void)onDisplayLink:(id)sender
I dispositivi bugged possono essere trovati tra iPhone 4 e 4s allo stesso modo. –
Si è provato a controllare l'allocazione/deallocazione della memoria oggetto. Potrebbe essere lì è il problema. Controlla anche questo link: http://iphonedevsdk.com/forum/iphone-sdk-development/103541-cmdevicemotion-flick-gesture.html – iCreative
Hai lo stesso problema quando usi i metodi basati sui blocchi? – Jonathan