2011-07-19 15 views

Respuesta

29

Todavía no utilicé iOS 5, pero ya en 4.x UIAccelerometer y UIAccelerometerDelegate fueron reemplazados por el framework CoreMotion. Es más sofisticado, tiene en cuenta las señales del giroscopio y realiza una fusión del sensor, es decir, calibra cosas como el cálculo del sesgo para usted.

Básicamente, la devolución de llamada del bloque CMDeviceMotionHandler es ahora equivalente. Se llama cada dispositivoMotionUpdateInterval segundos o puede ir con su propio ciclo de temporizador y extraer los datos. Es bastante sencillo y fácil de usar. Mira Simple iPhone motion detect y sigue los tres enlaces a los documentos SDK.

Hay tres cosas que hay que tener en cuenta:

  • Trabajar con Motion dispositivo requiere la versión iPhone> = 4 o más nueva generación del iPod touch porque se basa en el apoyo giroscopio
  • Al utilizar dispositivos de movimiento se no debe usar el filtro de paso bajo para extraer la gravedad porque está hecho para usted
  • Si desea admitir hardware antiguo, debe trabajar con datos sin formato. Esto se hace creando un CMAcceleromeHandler y llamando al startAccelerometerUpdatesToQueue:withHandler:. Luego tiene que extraer la gravedad con el filtrado de paso bajo como en Acelerado
+0

Entonces, ¿sabe qué reemplaza el acelerómetro: didAccelerate:? Mi aplicación lo usa, pero me gustaría apoyar la aplicación en iOS5 cuando se lance. Gracias – jcpennypincher

+1

@jcpennypincher: vea la respuesta actualizada y siga los 3 enlaces provistos en la respuesta a la que se hace referencia (iPhone simple ...). – Kay

+0

En el momento en que Kay escribió esta respuesta, el "iPod touch más nuevo" fue el iPod Touch 4. De acuerdo con [Apple] (https://developer.apple.com/library/ios/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/ DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html), estos son los modelos base con capacidad de giroscopio: iPhone 4, iPad 2 y iPod Touch 4. De mi investigación, si tienes iOS 7 o superior, entonces definitivamente estás en un dispositivo que tiene giroscopio capacidad. iOS 6 fue compatible con iPhone 3GS, por lo que creo que cualquier dispositivo con iOS 6 o posterior tendrá que probar la capacidad de giro. – henryaz

Cuestiones relacionadas