Adding HealthConnect sync for:

Body Temperature
    Skin Temperature
    Distance
    Exercise
    Heart rate
    Heart rate variability
    Oxygen saturation
    Sleep
    Steps
    Total calories burned
    VO2 max
    Weight

The feature is configurable via Settings->External Integrations->Health Connect

Based on https://codeberg.org/LLan/Gadgetbridge

Kudos to LLan for the preliminary work!
This commit is contained in:
Gideon Zenz
2026-01-03 15:03:21 +01:00
committed by José Rebelo
parent ac557cabf3
commit aea638d4be
42 changed files with 5560 additions and 2 deletions
+63
View File
@@ -207,6 +207,7 @@
<string name="pref_header_general">General settings</string>
<string name="pref_header_other">Other</string>
<string name="pref_header_system">System</string>
<string name="pref_header_sync">Synchronization</string>
<string name="pref_header_audio">Audio</string>
<string name="pref_header_calendar">Calendar</string>
<string name="pref_header_connection">Connection</string>
@@ -4518,4 +4519,66 @@
<string name="pref_title_pebble_search_app_updates">Search for app updates</string>
<string name="pref_summary_pebble_search_app_updates">Automatically search for watch app and watchface updates when opening the app manager</string>
<string name="pref_sos_contact_title">SOS contact</string>
<!-- Export Health Connect preferences -->
<string name="healthconnect_settings">Health Connect</string>
<string name="pref_health_connect_enabled">Enable Health Connect Export</string>
<string name="pref_health_connect_manual_settings">Manage Health Connect Data</string>
<string name="pref_health_connect_settings">Health Connect Settings</string>
<string name="pref_health_connect_settings_summary">Open Android Health Connect settings</string>
<string name="pref_health_connect_disable_notice">To disable Health Connect Export, remove all permissions of Gadgetbridge from the Health Connect App</string>
<string name="pref_health_connect_sync_notice">Depending on the amount of data, a Health Connect sync might take several minutes.</string>
<string name="pref_health_connect_device_selection">Select devices</string>
<string name="pref_health_connect_device_selection_summary">Select which devices to include the data from for sharing with Health Connect</string>
<string name="health_connect_unsupported">Health Connect not supported on this Android Version</string>
<string name="health_connect_update_required">Health Connect Provider Update Required</string>
<string name="health_connect_settings_open_error">Could not open Health Connect\'s settings screen. Please try opening the Health Connect app manually.</string>
<string name="pref_health_connect_sync_on_event_title">Sync after device sync</string>
<string name="pref_health_connect_sync_on_event_summary">Sync to Health Connect after a selected device has finished syncing its activity data.</string>
<string name="health_connect_permissions_rationale_title">Privacy Policy and Permissions</string>
<string name="health_connect_permissions_rationale_message">Gadgetbridge collects data from your devices and, with your permission, shares it with Health Connect. This data is stored on your device and is not shared with any third parties.</string>
<string name="health_connect_sync_notification_title">Health Connect Sync</string>
<string name="health_connect_sync_notification_message">Syncing data with Health Connect…</string>
<string name="health_connect_unavailable_summary">Health Connect is not available on this system.</string>
<string name="health_connect_permission_check_error">Error checking Health Connect permissions.</string>
<string name="health_connect_all_denied">All Health Connect permissions for Gadgetbridge\'s data types were denied or revoked.</string>
<string name="health_connect_failed_init">Failed to initialize Health Connect client after permission change.</string>
<string name="health_connect_all_granted">Health Connect enabled. Data sync will begin for granted data types.</string>
<string name="health_connect_permission_changed">Health Connect permissions changed.</string>
<string name="health_connect_no_devices_selected">No devices selected for Health Connect sync.</string>
<string name="health_connect_no_permissions">No Health Connect permissions granted. Cannot sync.</string>
<string name="health_connect_finished">Finished Health Connect Data Sync for all selected devices.</string>
<string name="health_connect_finished_no_data">Finished Health Connect Data Sync (No data available to sync)</string>
<string name="health_connect_finished_with_stats">Finished Health Connect Data Sync (%1$s)</string>
<string name="health_connect_finished_with_stats_and_errors">Finished Health Connect Data Sync (%1$s) [Errors: %2$s]</string>
<string name="health_connect_finished_with_errors">Health Connect Sync experienced errors, some data will not be available.</string>
<string name="health_connect_syncing">Syncing…</string>
<string name="notification_channel_health_connect_sync_name">Health Connect Sync</string>
<string name="health_connect_sync_status_title">Sync Status</string>
<string name="pref_health_connect_detailed_workout_sync_title">Detailed workout sync</string>
<string name="pref_health_connect_detailed_workout_sync_summary">Sync GPS routes and per-second metrics (heart rate, speed, power) for workouts. Provides richer data but may take longer.</string>
<string name="health_connect_initial_sync_custom_date">Sync from a custom date</string>
<string name="health_connect_initial_sync_dialog_title">Initial Health Connect Sync</string>
<string name="health_connect_initial_sync_dialog_message">Choose how much data to sync for the initial Health Connect synchronization:</string>
<string name="health_connect_initial_sync_preset">Sync last:</string>
<string name="health_connect_initial_sync_select_date">Select Date</string>
<string name="health_connect_initial_sync_3_days">3 days</string>
<string name="health_connect_initial_sync_7_days">7 days</string>
<string name="health_connect_initial_sync_30_days">30 days</string>
<string name="health_connect_initial_sync_all">Sync all</string>
<string name="health_connect_sync_already_running">Sync is already running.</string>
<string name="health_connect_sync_now_title">Sync Now?</string>
<string name="health_connect_sync_now_message">Do you want to start synchronizing your data to Health Connect now?</string>
<string name="health_connect_sync_now">Sync Now</string>
<string name="health_connect_sync_later">Sync Later</string>
<string name="health_connect_prompt_full_dao_reset">All Health Connect permissions for Gadgetbridge have been revoked. Did you also remove all Data? If yes, resetting the sync history will allow to re-sync all old data if you give permissions again.</string>
<string name="health_connect_reset_sync_history">Reset Sync History</string>
<string name="health_connect_keep_sync_history">Keep Sync History</string>
<string name="health_connect_exception">Health Connect Data Sync: </string>
<string name="health_connect_sync_failed">Sync failed.</string>
<string name="health_connect_sync_failed_retries">Sync failed after multiple attempts. Last error: %1$s</string>
<string name="health_connect_syncing_device_datatype">Syncing %1$s %2$s: %3$s to %4$s</string>
<string name="health_connect_sync_error_for_device">Sync error for %1$s (%2$s): %3$s</string>
<string name="health_connect_permission_denied">Permission denied: %1$s. Please check Health Connect permissions.</string>
<string name="health_connect_sleep_session_title">Sleep Session from %1$s</string>
<string name="health_connect_sleep_session_notes">Sleep data from Gadgetbridge device: %1$s.</string>
</resources>