/// <summary> /// 步数变化 /// </summary> private void Pedometer_ReadingChanged(Pedometer sender, PedometerReadingChangedEventArgs args) { PedometerReading reding = args.Reading; if (reding.StepKind == PedometerStepKind.Running) { if (rs == reding.CumulativeSteps) { return; } rs = reding.CumulativeSteps; } else { if (ws == reding.CumulativeSteps) { return; } ws = reding.CumulativeSteps; } double h = Math.Round(nowH, 1); double p = pressure.GetCurrentReading().StationPressureInHectopascals; int s = args.Reading.CumulativeSteps; long time = TimeUtil.getNowStamp(); dm.insertHeight(time, h, p, ws, rs); }
/// <summary> /// Invoked when the underlying Pedometer sees a change in the step count for a step kind /// </summary> /// <param name="sender">unused</param> /// <param name="args">Pedometer reading that is being notified</param> async private void Pedometer_ReadingChanged(Pedometer sender, PedometerReadingChangedEventArgs args) { await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { PedometerReading reading = args.Reading; int newCount = 0; // update step counts based on the step kind switch (reading.StepKind) { case PedometerStepKind.Unknown: if (reading.CumulativeSteps < unknownStepCount) { unknownStepCount = 0; } newCount = reading.CumulativeSteps - unknownStepCount; unknownStepCount = reading.CumulativeSteps; ScenarioOutput_UnknownCount.Text = unknownStepCount.ToString(); ScenarioOutput_UnknownDuration.Text = reading.CumulativeStepsDuration.TotalMilliseconds.ToString(); break; case PedometerStepKind.Walking: if (reading.CumulativeSteps < walkingStepCount) { walkingStepCount = 0; } newCount = reading.CumulativeSteps - walkingStepCount; walkingStepCount = reading.CumulativeSteps; ScenarioOutput_WalkingCount.Text = walkingStepCount.ToString(); ScenarioOutput_WalkingDuration.Text = reading.CumulativeStepsDuration.TotalMilliseconds.ToString(); break; case PedometerStepKind.Running: if (reading.CumulativeSteps < runningStepCount) { runningStepCount = 0; } newCount = reading.CumulativeSteps - runningStepCount; runningStepCount = reading.CumulativeSteps; ScenarioOutput_RunningCount.Text = runningStepCount.ToString(); ScenarioOutput_RunningDuration.Text = reading.CumulativeStepsDuration.TotalMilliseconds.ToString(); break; default: break; } totalCumulativeSteps += newCount; ScenarioOutput_TotalStepCount.Text = totalCumulativeSteps.ToString(); DateTimeFormatter timestampFormatter = new DateTimeFormatter("shortdate longtime"); ScenarioOutput_Timestamp.Text = timestampFormatter.Format(reading.Timestamp); }); }
internal PedometerReadingChangedEventArgs( PedometerReading reading) { Reading = reading; }
public HistoryRecord(PedometerReading reading) { stepKind = reading.StepKind; stepsCount = reading.CumulativeSteps; recordTimestamp = reading.Timestamp; }