我想计算用户步数(比如计步器)。我知道iPhone 5s,6和6+我们可以使用CMStepCounter
或CMPedometer
类(使用M7芯片的设备)但iPhone 5及更低版本不支持M7芯片,因此我们无法使用CoreMotion
。通过在互联网上搜索,我发现我们可以使用加速计传感器来达到此目的。但是在花了很多时间之后,我仍然无法制作出有效的算法。
Edit2:在搜索google上花了好几天后我尝试了很多,但仍无法找到使用加速度计计算用户步数的工作算法。 谁可以帮助我?
答案 0 :(得分:0)
如果您使用的是更高版本的iOS,那么您正在寻找CMMotionManager。 但是,如果您想继续使用iOS 5或更低版本,则需要使用以下内容,尽管这已被弃用。
UIAccelerometer * accelerometer = [UIAccelerometer sharedAccelerometer];
accelerometer.delegate = self;
您可以获取x,y,z值的方法是:
-(void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration
{
//Check your x,y,z values to find step ...
}
如果你需要知道步数计数器背后的逻辑,你可以在谷歌搜索和阅读:)