Heart Rate

Sets heart rate listener

All heart rate related data will pass the _blePlugin.heartRateEveStm.listen callback.

_blePlugin.heartRateEveStm.listen(
        (HeartRateBean event) {
            /// Do something with new state,for example:
          setState(() {
            switch (event.type) {
              case HeartRateType.measuring:
                _measuring = event.measuring!;
                break;
              case HeartRateType.onceMeasureComplete:
                _onceMeasureComplete = event.onceMeasureComplete!;
                break;
              case HeartRateType.bloodOxygen:
                _historyHrList = event.historyHrList!;
                break;
              case HeartRateType.measureComplete:
                _measureComplete = event.measureComplete!;
                break;
              case HeartRateType.hourMeasureResult:
                _hour24MeasureResult = event.hour24MeasureResult!;
                break;
              case HeartRateType.measureResult:
                _trainingList = event.trainingList!;
                break;
              default:
                break;
            }
          });
        });

Callback Description:

HeartRateBean:

callback valuecallback value typecallback value description
typeintGet the corresponding return value according to type, where type is the value corresponding to HeartRateType
measuringintThe last dynamic heart rate measurement result
onceMeasureCompleteintTake a heart rate measurement
historyHrListList< HistoryHeartRateBean >Historical heart rate data
measureCompleteMeasureCompleteBeanHeart rate data
hour24MeasureResultHeartRateInfoHeart rate measurement data for today or the previous day
trainingListList< TrainingHeartRateBean >Dynamic heart rate data

HistoryHeartRateBean:

callback valuecallback value typecallback value description
dateStringdate
hrintheart rate

MeasureCompleteBean:

callback valuecallback value typecallback value description
historyDynamicRateTypeStringHeart rate type, exercise heart rate
heartRateHeartRateInfoheart rate

HeartRateInfo:

callback valuecallback value typecallback value description
startTimeintstart measure heart rate time
heartRateListList< int >heart rate list
timeIntervalintHeart rate measurement interval
heartRateTypeStringHeart rate measurement type

TrainingHeartRateBean:

typestartTimeendTimevalidTimestepsdistancecalories
SportModeTypeStart time (unit: milliseconds)End time (unit: milliseconds)Effective duration of exercise(unit: second)Number of steps (partial motion mode isActive distance (partial motion mode is not supported)Calories

SportModeType:

callback valuecallback value typecallback value description
walkTypeintWalking
runTypeintRun
outdoorCyclingTypeintoutdoor cycling
ropeTypeintrope
badmintonTypeintbadminton
basketballTypeintbasketball
footballTypeintfootball
swimTypeintswim
mountaineeringTypeintmountaineering
tennisTypeinttennis
rugbyTypeintrugby
golfTypeintgolf
yogaTypeintyoga
workoutTypeintworkout
danceTypeintdance
baseballTypeintbaseball
ellipticalTypeintelliptical
indoorCyclingTypeintindoor cycling
freeTrainingTypeintfree training
boatingTypeintboating
trailRunningTypeinttrail running
skiTypeintski
bowlingTypeintbowling
dumbbellsTypeintdumbbells
sitUpsTypeintsit ups
onFootTypeinton foot
indoorWalkTypeintindoor walk
indoorRunTypeintindoor run
cricketTypeintcricket
kabAddiTypeintkabAddi

HeartRateType:

typevaluevalue description
measuring1Gets the heart rate measurement
onceMeasureComplete2Measuring once heart rate
heartRate3Gets history once heart rate
measureComplete4Data when heart rate measurement is completed
hourMeasureResult5Gets heart rate measurement data
measureResult6Gets Action data,Query the saved heart rate measurements in three sports modes

Gets last action heart rate measurement

The dynamic heart rate is measured in an unconnected state and the watch can save the last measurement.

Query the last measured heart rate record saved by the watch. The query result will be obtained through the heartRateEveStm listening stream and saved in the HeartRateBean.measuring field,type is measuring.

_blePlugin.queryLastDynamicRate(HistoryDynamicRateType);

Parameter Description :

HistoryDynamicRateType:

valuevalue typevalue description
firstHeartRateStringfirst
secondHeartRateStringsecond
thirdHeartRateStringthird

Enable timing to measure heart rate

The watch supports 24-hour timed measurement of heart rate, starting from 00:00, you can set the measurement interval, the time interval is a multiple of 5 minutes.

_blePlugin.enableTimingMeasureHeartRate(int interval);

Disable timing to measure heart rate

Turn off the timing to measure the heart rate.

_blePlugin.disableTimingMeasureHeartRate;

Gets timing to measure heart rate status

The query timing measures the heart rate on state.

int timeHR = await _blePlugin.queryTimingMeasureHeartRate;

Gets today's heart rate measurement data

Today's heart rate measurement is divided into two types, which are obtained according to the measurement method supported by the corresponding watch.

Query today's measured heart rate value. The query result will be obtained through the heartRateEveStm listening stream and saved in the HeartRateBean.hour24MeasureResult field,type is hourMeasureResult.

_blePlugin.queryTodayHeartRate(TodayHeartRateType);

TodayHeartRateType:

typevaluevalue description
timingMeasureHeartRate1Timed heart rate measurement
allDayHeartRate224-hour continuous measurement

Gets historical heart rate data

Query the heart rate data of the previous day. The query result will be obtained through the heartRateEveStm listening stream and saved in the HeartRateBean.hour24MeasureResult field,type is hourMeasureResult.

_blePlugin.queryPastHeartRate;

Gets action data

Some watchs support heart rate measurement in a variety of motion modes. The measurements include other motion-related data such as heart rate and calories. This interface is used to obtain data such as calories. The watch can save the last three sports data. Supporting 24-hour continuous measurement of the watch, the exercise heart rate can be obtained from the 24-hour heart rate data according to the movement up time; other watch exercise heart rate and dynamic heart rate acquisition methods are consistent.

The query result will be obtained through the heartRateEveStm listening stream and saved in the HeartRateBean.trainingList field,type is measureResult.

_blePlugin.queryTrainingHeartRate;

Measuring once heart rate

Start measuring a single heart rate, the query result will be obtained through the heartRateEveStm listening stream and saved in the HeartRateBean.measureComplete field,type is onceMeasureComplete.

_blePlugin.startMeasureOnceHeartRate;

Stop once heart rate

End a once measurement. A measurement time that is too short will result in no measurement data.

_blePlugin.stopMeasureOnceHeartRate;

Gets history once heart rate

To query the historical heart rate, the query result will be obtained through the heartRateEveStm monitoring stream and saved in the HeartRateBean.historyHrList field,type is heartRate.

_blePlugin.queryHistoryHeartRate;
Last Updated: