Add missing workout data sync: active calories, steps, and cadence

- Fix calorie mapping: caloriesBurnt represents active calories, not total calories
- Parse RAW_SUMMARY_DATA when SUMMARY_DATA JSON is empty (fixes Amazfit/ZeppOS devices)
- Use device-specific ActivitySummaryParser to extract workout metrics from binary protobuf data
- Sync ActiveCaloriesBurnedRecord separately from total calories
- Add StepsRecord for step count during workouts
- Add intelligent cadence syncing (StepsCadenceRecord for running/walking, CyclingPedalingCadenceRecord for cycling)
- Add required Health Connect permissions to manifest
- Update HealthConnectPermissionManager with all workout permissions
This commit is contained in:
Gideon Zenz
2026-01-16 22:12:23 +01:00
committed by José Rebelo
parent 4ee7007c61
commit 46925c2dde
3 changed files with 195 additions and 19 deletions
+3
View File
@@ -110,6 +110,7 @@
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
<!-- Needed for Health Connect See this for more: https://developer.android.com/health-and-fitness/guides/health-connect/plan/data-types#alpha10 -->
<uses-permission android:name="android.permission.health.WRITE_ACTIVE_CALORIES_BURNED"/>
<uses-permission android:name="android.permission.health.WRITE_HEART_RATE"/>
<uses-permission android:name="android.permission.health.WRITE_STEPS"/>
<uses-permission android:name="android.permission.health.WRITE_EXERCISE"/>
@@ -129,6 +130,8 @@
<uses-permission android:name="android.permission.health.WRITE_RESPIRATORY_RATE" />
<uses-permission android:name="android.permission.health.WRITE_RESTING_HEART_RATE" />
<uses-permission android:name="android.permission.health.WRITE_BLOOD_GLUCOSE" />
<uses-permission android:name="android.permission.health.WRITE_STEPS_CADENCE" />
<uses-permission android:name="android.permission.health.WRITE_CYCLING_PEDALING_CADENCE" />
<uses-sdk tools:overrideLibrary="androidx.health.connect.client"/>
<uses-feature