Skip to main content

Sport

The Sport module provides comprehensive methods for synchronizing sport activity data from the device, including detailed metrics, heart rate data, and activity summaries for various sport types. This module enables you to retrieve historical sport activity records with full granularity data including performance metrics, heart rate zones, and sport-specific measurements.

Prerequisites

  • Device must be connected and support sport activity data synchronization
  • User must have proper permissions to access health data
  • Device firmware must support the sport data protocol
  • Valid start time and end time parameters (Unix timestamps in seconds)

Data Models

TSSportModel

Complete sport activity session containing detailed metrics and measurements.

PropertyTypeDescription
summaryTSSportSummaryModel *Sport activity summary data including statistics and achievements
sportItemsNSArray<TSSportItemModel *> *Array of detailed sport item metrics recorded during activity
heartRateItemsNSArray<TSHRValueItem *> *Array of heart rate measurements during activity

TSSportSummaryModel

Summary statistics and performance metrics for a complete sport activity.

PropertyTypeDescription
startTimeNSTimeIntervalUnix timestamp (seconds) when activity started
endTimeNSTimeIntervalUnix timestamp (seconds) when activity ended
durationdoubleTotal duration in seconds
userIDNSString *Unique identifier of user who performed activity
macAddressNSString *MAC address of recording device
sportIDlongUnique identifier for sport activity session
typeTSSportTypeEnumType of sport activity
stepsUInt32Total steps taken during activity
distanceUInt32Total distance in meters
calorieUInt32Total calories burned
maxHrValueUInt8Highest heart rate in BPM
minHrValueUInt8Lowest heart rate in BPM
avgHrValueUInt8Average heart rate in BPM
maxPacefloatFastest pace in seconds per kilometer
minPacefloatSlowest pace in seconds per kilometer
avgPacefloatAverage pace in seconds per kilometer
maxSpeedfloatHighest speed in meters per second
minSpeedfloatLowest speed in meters per second
avgSpeedfloatAverage speed in meters per second
maxCadenceUInt16Highest step cadence in steps per minute
minCadenceUInt16Lowest step cadence in steps per minute
avgCadenceUInt16Average step cadence in steps per minute
warmHrDurationUInt32Time in warm-up heart rate zone (seconds)
fatBurnHrDurationUInt32Time in fat burning heart rate zone (seconds)
aerobicHrDurationUInt32Time in aerobic heart rate zone (seconds)
anaerobicHrDurationUInt32Time in anaerobic heart rate zone (seconds)
extremeHrDurationUInt32Time in extreme heart rate zone (seconds)
warmHrRatioUInt8Percentage of time in warm-up zone (0-100)
fatBurnHrRatioUInt8Percentage of time in fat burning zone (0-100)
aerobicHrRatioUInt8Percentage of time in aerobic zone (0-100)
anaerobicHrRatioUInt8Percentage of time in anaerobic zone (0-100)
extremeHrRatioUInt8Percentage of time in extreme zone (0-100)
displayConfigsNSData *Display configuration bitmap (nullable, max 32 bytes)

TSSportItemModel

Detailed metrics for a specific segment or measurement point during sport activity.

PropertyTypeDescription
userIDNSString *Unique identifier of user
macAddressNSString *MAC address of recording device
sportIDlongUnique identifier for sport activity session
typeUInt16Type of sport activity
distanceNSIntegerTotal distance covered in meters
stepsNSIntegerTotal steps taken
caloriesNSIntegerTotal calories burned
paceNSIntegerCurrent pace in seconds per kilometer
cadenceNSIntegerStep cadence in steps per minute
speedNSIntegerSpeed in meters per minute
swimStyleintSwimming style (1=Freestyle, 2=Breaststroke, 3=Backstroke, 4=Butterfly)
swimLapsintNumber of swimming laps completed
swimStrokesintTotal swimming strokes
swimStrokeFreqintSwimming stroke frequency in strokes per minute
swolfintSWOLF score (Swimming + Golf efficiency)
jumpCountintTotal successful jump rope jumps
jumpBkCountintNumber of jump rope interruptions
jumpConsCountintHighest consecutive jump rope count
elCountintTotal elliptical machine strides
elFrequecyintCurrent elliptical frequency in strides per minute
elMaxFrequecyintMaximum elliptical frequency in strides per minute
elMinFrequecyintMinimum elliptical frequency in strides per minute
rowCountintTotal rowing strokes completed
rowFrequecyintCurrent rowing frequency in strokes per minute
rowMaxFrequecyintMaximum rowing frequency in strokes per minute
rowMinFrequecyintMinimum rowing frequency in strokes per minute

TSSportDailyModel

Daily aggregation of all sport activities for a specific date.

PropertyTypeDescription
sportRecordsNSArray<TSSportModel *> *Array of all sport activities performed that day
sportCountNSUIntegerTotal number of sport activities
totalDurationNSTimeIntervalTotal duration of all activities in seconds
maxHeartRateUInt8Highest heart rate recorded across all activities
minHeartRateUInt8Lowest heart rate recorded across all activities

Enumerations

TSSportTypeEnum

All supported sport activity types.

ValueHexName (English)Name (Chinese)
TSSportTypeOutdoorCycling0x01Outdoor Cycling户外骑行
TSSportTypeOutdoorRunning0x05Outdoor Running户外跑步
TSSportTypeIndoorRunning0x09Indoor Running室内跑步
TSSportTypeOutdoorWalking0x0DOutdoor Walking户外健走
TSSportTypeClimbing0x11Climbing登山
TSSportTypeBasketball0x15Basketball篮球
TSSportTypeSwimming0x19Swimming游泳
TSSportTypeBadminton0x1DBadminton羽毛球
TSSportTypeFootball0x21Football足球
TSSportTypeElliptical0x25Elliptical椭圆机
TSSportTypeYoga0x29Yoga瑜伽
TSSportTypePingPong0x2DTable Tennis乒乓球
TSSportTypeRopeSkipping0x31Rope Skipping跳绳
TSSportTypeRowing0x35Rowing Machine划船机
TSSportTypeLazyBike0x39Lazy Bike懒人车
TSSportTypeFitnessBike0x3DFitness Bike健身车
TSSportTypeFreeTraining0x41Free Training自由训练
TSSportTypeTennis0x45Tennis网球
TSSportTypeBaseball0x49Baseball棒球
TSSportTypeRugby0x4DRugby橄榄球
TSSportTypeCricket0x51Cricket板球
TSSportTypeFreeSports0x55Free Sports自由运动
TSSportTypeStrengthTraining0x59Strength Training力量训练
TSSportTypeIndoorWalking0x5DIndoor Walking室内走路
TSSportTypeIndoorCycling0x61Indoor Cycling室内骑行
TSSportTypeDumbbell0x65Dumbbell哑铃
TSSportTypeDance0x69Dance舞蹈
TSSportTypeHulaHoop0x6DHula Hoop呼啦圈
TSSportTypeGolf0x71Golf高尔夫
TSSportTypeLongJump0x75Long Jump跳远
TSSportTypeSitUp0x79Sit-up仰卧起坐
TSSportTypeVolleyball0x7DVolleyball排球
TSSportTypeParkour0x81Parkour跑酷
TSSportTypeHiking0x85Hiking徒步
TSSportTypeHockey0x89Hockey曲棍球
TSSportTypeBoating0x8DBoating划船
TSSportTypeHIIT0x91HIITHIIT高强度间歇训练
TSSportTypeSoftball0x95Softball垒球
TSSportTypeTrailRunning0x99Trail Running越野跑
TSSportTypeSkiing0x9DSkiing滑雪
TSSportTypeTreadmill0xA1Treadmill漫步机
TSSportTypeRelaxation0xA5Relaxation整理放松
TSSportTypeCrossTraining0xA9Cross Training交叉训练
TSSportTypePilates0xADPilates普拉提
TSSportTypeCrossMatch0xB1Cross Match交叉配合
TSSportTypeFunctionalTraining0xB5Functional Training功能性训练
TSSportTypePhysicalTraining0xB9Physical Training体能训练
TSSportTypeMixedCardio0xBDMixed Cardio混合有氧
TSSportTypeLatinDance0xC1Latin Dance拉丁舞
TSSportTypeStreetDance0xC5Street Dance街舞
TSSportTypeFreeSparring0xC9Free Sparring自由搏击
TSSportTypeBallet0xCDBallet芭蕾
TSSportTypeAustralianFootball0xD1Australian Football澳式足球
TSSportTypeBowling0xD5Bowling保龄球
TSSportTypeSquash0xD9Squash壁球
TSSportTypeCurling0xDDCurling冰壶
TSSportTypeSnowboarding0xE1Snowboarding单板滑雪
TSSportTypeFishing0xE5Fishing钓鱼
TSSportTypeFrisbee0xE9Frisbee飞盘
TSSportTypeAlpineSkiing0xEDAlpine Skiing高山滑雪
TSSportTypeCoreTraining0xF1Core Training核心训练
TSSportTypeSkating0xF5Skating滑冰
TSSportTypeFitnessGaming0xF9Fitness Gaming健身游戏
TSSportTypeAerobics0xFDAerobics健身操
TSSportTypeGroupCallisthenics0x0101Group Calisthenics团体操
TSSportTypeKickBoxing0x0105Kick Boxing搏击操
TSSportTypeFencing0x0109Fencing击剑
TSSportTypeStairClimbing0x010DStair Climbing爬楼
TSSportTypeAmericanFootball0x0111American Football美式橄榄球
TSSportTypeFoamRolling0x0115Foam Rolling泡沫轴筋膜放松
TSSportTypePickleball0x0119Pickleball匹克球
TSSportTypeBoxing0x011DBoxing拳击
TSSportTypeTaekwondo0x0121Taekwondo跆拳道
TSSportTypeKarate0x0125Karate空手道
TSSportTypeFlexibility0x0129Flexibility柔韧度
TSSportTypeHandball0x012DHandball手球
TSSportTypeHandcar0x0131Handcar手摇车
TSSportTypeMeditation0x0135Meditation舒缓冥想类运动
TSSportTypeWrestling0x0139Wrestling摔跤
TSSportTypeStepping0x013DStepping踏步
TSSportTypeTaiChi0x0141Tai Chi太极
TSSportTypeGymnastics0x0145Gymnastics体操
TSSportTypeTrackAndField0x0149Track and Field田径
TSSportTypeMartialArts0x014DMartial Arts武术
TSSportTypeLeisureSports0x0151Leisure Sports休闲运动
TSSportTypeSnowSports0x0155Snow Sports雪上运动
TSSportTypeLacrosse0x0159Lacrosse长曲棍球
TSSportTypeHorizontalBar0x015DHorizontal Bar单杠
TSSportTypeParallelBars0x0161Parallel Bars双杠
TSSportTypeRollerSkating0x0165Roller Skating轮滑
TSSportTypeDarts0x0169Darts飞镖
TSSportTypeArchery0x016DArchery射箭
TSSportTypeHorseRiding0x0171Horse Riding骑马
TSSportTypeShuttlecock0x0175Shuttlecock毽球
TSSportTypeIceHockey0x0179Ice Hockey冰球
TSSportTypeAbdominalTraining0x017DAbdominal Training腰腹训练
TSSportTypeVO2MaxTest0x0181VO2 Max Test最大摄氧量测试
TSSportTypeJudo0x0185Judo柔道
TSSportTypeTrampolining0x0189Trampolining蹦床
TSSportTypeSkateboard0x018DSkateboard滑板
TSSportTypeHoverBoard0x0191Hover Board平衡车
TSSportTypeInlineSkating0x0195Inline Skating溜旱冰
TSSportTypeTreadmillRunning0x0199Treadmill Running跑步机
TSSportTypeDiving0x019DDiving跳水
TSSportTypeSurfing0x01A1Surfing冲浪
TSSportTypeSnorkeling0x01A5Snorkeling浮潜
TSSportTypePullUp0x01A9Pull-up引体向上
TSSportTypePushUp0x01ADPush-up俯卧撑
TSSportTypePlank0x01B1Plank平板支撑
TSSportTypeRockClimbing0x01B5Rock Climbing攀岩
TSSportTypeHighJump0x01B9High Jump跳高
TSSportTypeBungeeJumping0x01BDBungee Jumping蹦极
TSSportTypeNationalDance0x01C1National Dance民族舞
TSSportTypeHunting0x01C5Hunting打猎
TSSportTypeShooting0x01C9Shooting射击
TSSportTypeMarathon0x01CDMarathon马拉松
TSSportTypeSpinningBike0x01D1Spinning Bike动感单车
TSSportTypePoolSwimming0x01D5Pool Swimming泳池游泳
TSSportTypeOpenWaterSwimming0x01D9Open Water Swimming开放水域游泳
TSSportTypeBallroomDance0x01DDBallroom Dance交际舞
TSSportTypeZumba0x01E1Zumba尊巴
TSSportTypeJazzDance0x01E5Jazz Dance爵士舞
TSSportTypeStepMachine0x01E9Step Machine踏步机
TSSportTypeStairMachine0x01EDStair Machine爬楼机
TSSportTypeCroquet0x01F1Croquet门球
TSSportTypeWaterPolo0x01F5Water Polo水球
TSSportTypeWallBall0x01F9Wall Ball墙球
TSSportTypeBilliards0x01FDBilliards台球
TSSportTypeSepakTakraw0x0201Sepak Takraw藤球
TSSportTypeStretching0x0205Stretching拉伸
TSSportTypeFreeGymnastics0x0209Free Gymnastics自由体操
TSSportTypeBarbell0x020DBarbell杠铃
TSSportTypeWeightlifting0x0211Weightlifting举重
TSSportTypeDeadlift0x0215Deadlift硬拉
TSSportTypeBurpee0x0219Burpee波比跳
TSSportTypeJumpingJack0x021DJumping Jack开合跳
TSSportTypeUpperBodyTraining0x0221Upper Body Training上肢训练
TSSportTypeLowerBodyTraining0x0225Lower Body Training下肢训练
TSSportTypeBackTraining0x0229Back Training背部训练
TSSportTypeBeachBuggy0x022DBeach Buggy沙滩车
TSSportTypeParagliding0x0231Paragliding滑翔伞
TSSportTypeFlyAKite0x0235Fly a Kite放风筝
TSSportTypeTugOfWar0x0239Tug of War拔河
TSSportTypeTriathlon0x023DTriathlon铁人三项
TSSportTypeSnowmobile0x0241Snowmobile雪地摩托
TSSportTypeSnowCar0x0245Snow Car雪车
TSSportTypeSled0x0249Sled雪橇
TSSportTypeSkiBoard0x024DSki Board滑雪板
TSSportTypeCrossCountrySkiing0x0251Cross Country Skiing越野滑雪
TSSportTypeIndoorSkating0x0255Indoor Skating室内滑冰
TSSportTypeKabaddi0x0259Kabaddi卡巴迪
TSSportTypeMuayThai0x025DMuay Thai泰拳
TSSportTypeKickboxing0x0261Kickboxing踢拳
TSSportTypeRacing0x0265Racing赛车
TSSportTypeIndoorFitness0x0269Indoor Fitness室内健身
TSSportTypeOutdoorSoccer0x026DOutdoor Soccer户外足球
TSSportTypeBellyDance0x0271Belly Dance肚皮舞
TSSportTypeSquareDance0x0275Square Dance广场舞

TSSportDisplayMetric

Display metrics that can be shown during sport activities.

ValueName (English)Name (Chinese)
TSSportDisplayMetricDurationDuration持续时间
TSSportDisplayMetricHeartRateHeart Rate心率
TSSportDisplayMetricStepsSteps步数
TSSportDisplayMetricDistanceDistance距离
TSSportDisplayMetricCaloriesCalories卡路里
TSSportDisplayMetricAvgSpeedAverage Speed平均速度
TSSportDisplayMetricAvgPaceAverage Pace平均配速
TSSportDisplayMetricAvgCadenceAverage Cadence平均步频
TSSportDisplayMetricAvgStrideAverage Stride平均步幅
TSSportDisplayMetricTotalAscentTotal Ascent累计上升
TSSportDisplayMetricTotalDescentTotal Descent累计下降
TSSportDisplayMetricSwimLapsSwim Laps游泳趟数
TSSportDisplayMetricSwimStrokesSwim Strokes游泳划水次数
TSSportDisplayMetricSwimStyleSwim Style泳姿
TSSportDisplayMetricSwimStrokeRateSwim Stroke Rate游泳划水频率
TSSportDisplayMetricSwimEfficiencySwim Efficiency (SWOLF)游泳效率(SWOLF)
TSSportDisplayMetricTriggerCountTrigger Count触发次数
TSSportDisplayMetricTriggerRateTrigger Rate触发频率
TSSportDisplayMetricInterruptionCountInterruption Count中断次数
TSSportDisplayMetricContinuousCountContinuous Count连续次数

Callback Types

Sync Completion Handler

void (^)(NSArray<TSSportModel *> *_Nullable sports, NSError *_Nullable error)

Completion block called when sport history synchronization completes.

ParameterTypeDescription
sportsNSArray<TSSportModel *> *Array of synchronized sport activities (nil on error)
errorNSError *Error object if synchronization failed (nil on success)

API Reference

Synchronize sport history data within time range

Retrieve all sport activities that occurred between specified start and end times.

- (void)syncHistoryDataFormStartTime:(NSTimeInterval)startTime
endTime:(NSTimeInterval)endTime
completion:(nonnull void (^)(NSArray<TSSportModel *> *_Nullable sports, NSError *_Nullable error))completion;
ParameterTypeDescription
startTimeNSTimeIntervalUnix timestamp (seconds) for sync start
endTimeNSTimeIntervalUnix timestamp (seconds) for sync end
completionvoid (^)(NSArray<TSSportModel *> *, NSError *)Block called with results or error

Code Example:

// Get sport data for the past 7 days
NSTimeInterval now = [[NSDate date] timeIntervalSince1970];
NSTimeInterval sevenDaysAgo = now - (7 * 24 * 60 * 60);

id<TSSportInterface> sportInterface = (id<TSSportInterface>)kit;
[sportInterface syncHistoryDataFormStartTime:sevenDaysAgo
endTime:now
completion:^(NSArray<TSSportModel *> *sports, NSError *error) {
if (error) {
TSLog(@"Sport sync failed: %@", error.localizedDescription);
return;
}

TSLog(@"Synced %lu sport activities", (unsigned long)sports.count);
for (TSSportModel *sport in sports) {
TSSportSummaryModel *summary = sport.summary;
TSLog(@"Activity: %ld, Type: %ld, Duration: %.0f seconds, Distance: %u meters",
summary.sportID, (long)summary.type, summary.duration, summary.distance);
TSLog(@"Max HR: %u bpm, Avg HR: %u bpm, Calories: %u",
summary.maxHrValue, summary.avgHrValue, summary.calorie);
TSLog(@"Heart rate zones - Warm: %u%%, Fat Burn: %u%%, Aerobic: %u%%, Anaerobic: %u%%, Extreme: %u%%",
summary.warmHrRatio, summary.fatBurnHrRatio, summary.aerobicHrRatio,
summary.anaerobicHrRatio, summary.extremeHrRatio);
}
}];

Synchronize sport history data from start time until now

Retrieve all sport activities from a specified start time to the present moment.

- (void)syncHistoryDataFormStartTime:(NSTimeInterval)startTime
completion:(nonnull void (^)(NSArray<TSSportModel *> *_Nullable sports, NSError *_Nullable error))completion;
ParameterTypeDescription
startTimeNSTimeIntervalUnix timestamp (seconds) for