Step Counter API

Step Counter provides information about how many steps and for how long the user has been walking and running. The difference is detected by the intensity of the motion, not only by speed, so even if a user moves at the same speed by walking and running, the correct type of motion is detected. The API provides the current step count as well as a ten day history with five minute granularity. The API also provides a trigger to launch a background task when movement is detected. The trigger is raised whenever the user has moved at least five steps and at least ten minutes have elapsed since the previous trigger. The trigger is also raised at midnight in order for applications to reset their daily counters.

There is a delay of around six to seven seconds before Step Counter starts to provide step count data. All steps accumulated during this delay are also counted and no step data is lost. However, if the user stops moving before the end of the initial delay, the steps are not counted. After the initial delay, step counts are updated in near real time. The delay is introduced in order to filter out false positives.

Step Counter has some variation on the accuracy depending on the user's behavior patterns, how the device is held, and where the device is kept. False step recognitions can appear in some scenarios, for example, when the user is biking and the device is in the user's trousers pocket, or when the user is moving in a vehicle that is generating very strong vibrations.

Step Counter and motion data settings

Step Counter will work more or less the same regardless of which motion data level is in use (basic or detailed). In the detailed mode, the actual total step counts can be slightly more accurate as the sensor is better able to eliminate false positives, such as when traveling in a moving vehicle or riding a bicycle.