Domanda

Ho un problema relativo al software-hardware che sto cercando di risolvere i problemi. La mia app è stata sviluppata per iPhone4, iOS5 e utilizza il quadro di movimento principale per elaborare gli accelerometro e i dati del giroscopio in tempo reale. L'app fallisce quando si esegue su iPhone 3GS con iOS5

Il mio principale metodo Core-Motion è simile a questo:

        [motionManager startDeviceMotionUpdatesToQueue:motionQueue withHandler:^(CMDeviceMotion *motion, NSError *error) {

            //notify calibration delegate
            if(calibrationDelegate)
            {
                [calibrationDelegate collectCalibrationMotionData:motion];
            }
//a lot more processing

}
.

Ho rapporti che iPhones3GS non restituisce Sì a Isgyrovailable, mentre iPhone4 ritorna Sì.

 BOOL accelerometerAvailable  =  (motionManager.isAccelerometerAvailable)?YES:NO;
 BOOL gyroscopeAvailable      =  (motionManager.isGyroAvailable)?YES:NO;

        if(!accelerometerAvailable && ! gyroscopeAvailable)
        {
//handle error
            remoteControlState = kRemoteControlStateError;

        }
.

Ho scoperto dolorosamente che Apple vende la mia app ai clienti con iPhone4, 4S e 3GS. L'app non funziona per i clienti con iPhone 3GS perché la chiamata sopra non sembra passare il movimento oggetti al delegato di calibrazione.

Non ho iPhone 3GS per testare l'app, quindi ho alcune domande:

    .
  • è possibile specificare ovunque nelle proprietà del progetto Xcode che voglio che la mia app funzioni solo su iPhone4 e sopra? (o dispositivi con giroscopio disponibile?)

    Dove posso trovare maggiori informazioni su IOS5 Quirks come quello sopra Per capire meglio come iPhonex3GS differisce da iPhone4?

È stato utile?

Soluzione

.

È possibile specificare ovunque nelle proprietà del progetto Xcode che voglio che la mia app funzioni solo su iPhone4 e sopra?(o dispositivi con giroscopio disponibili?)

Sì, specificare tali dipendenze nel UIRequiredDeviceCapabilities chiave della tua info.plist (gyroscope sarebbe il requisito in questo caso).

Tuttavia, per un'app rilasciata, purtroppo è Impossibile per aggiungere nuovi requisiti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top