2

I want to make an app. that count user steps. So for that I have searched through the google but didn't found anything that could really help me. Although I came to know that by using Accelerometer data we can get the steps and I tried with this code

-(void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration
{
    const float violence = 1.2;
        static BOOL beenhere;
        BOOL shake = FALSE;
        if (beenhere) return;
        beenhere = TRUE;
        if (acceleration.x > violence || acceleration.x < (-1* violence))
            shake = TRUE;
        if (acceleration.y > violence || acceleration.y < (-1* violence))
            shake = TRUE;
        if (acceleration.z > violence || acceleration.z < (-1* violence))
            shake = TRUE;
        if (shake) {  //(shake || length>=1.7)
            numSteps=numSteps+1;
            self.stepCountLabel.text = [NSString stringWithFormat:@"%d", numSteps];
        }
        beenhere = false;
}

But i am not getting the expected results. So if anyone out there know a better algorithm or a link that could help me out. Plzz share

Narender Tak
  • 241
  • 2
  • 12

1 Answers1

0

Please check out CMStepCounter for iOS 7. It has been deprecated in iOS 8, for iOS 8+, check out CMPedometer.

Kaan Dedeoglu
  • 14,765
  • 5
  • 40
  • 41
  • I need that app to work in iPhone 5 and in lower versions which does not have M7 chip and according to my understanding CMStepCounter and CMPedometer works with M7 chip only. – Narender Tak Apr 23 '15 at 11:23