Skip to content

Pushappy/capacitor-health-connect

 
 

Repository files navigation

capacitor-health-connect

Android Health Connect integration for Capacitor

Install

npm install capacitor-health-connect
npx cap sync

API

checkAvailability()

checkAvailability() => Promise<{ availability: HealthConnectAvailability; }>

Returns: Promise<{ availability: HealthConnectAvailability; }>


ensureInstalled()

ensureInstalled() => Promise<{ installed: boolean; }>

Returns: Promise<{ installed: boolean; }>


insertRecords(...)

insertRecords(payload: InsertRecordsPayload) => Promise<{ recordIds: string[]; }>
Param Type
payload InsertRecordsPayload

Returns: Promise<{ recordIds: string[]; }>


readRecord(...)

readRecord(options: ReadRecordOptions) => Promise<{ record: StoredRecord; }>
Param Type
options ReadRecordOptions

Returns: Promise<{ record: StoredRecord<Record>; }>


readRecords(...)

readRecords(options: ReadRecordsOptions) => Promise<{ records: StoredRecord[]; pageToken?: string; }>
Param Type
options ReadRecordsOptions

Returns: Promise<{ records: StoredRecord<Record>[]; pageToken?: string; }>


getChangesToken(...)

getChangesToken(options: GetChangesTokenOptions) => Promise<{ token: string; }>
Param Type
options GetChangesTokenOptions

Returns: Promise<{ token: string; }>


getChanges(...)

getChanges(options: GetChangesOptions) => Promise<{ changes: Change[]; nextToken: string; }>
Param Type
options GetChangesOptions

Returns: Promise<{ changes: Change[]; nextToken: string; }>


requestHealthPermissions(...)

requestHealthPermissions(options: HealthPermissions) => Promise<{ grantedPermissions: HealthPermissions; hasAllPermissions: boolean; }>
Param Type
options HealthPermissions

Returns: Promise<{ grantedPermissions: HealthPermissions; hasAllPermissions: boolean; }>


checkHealthPermissions(...)

checkHealthPermissions(options: HealthPermissions) => Promise<{ grantedPermissions: HealthPermissions; hasAllPermissions: boolean; }>
Param Type
options HealthPermissions

Returns: Promise<{ grantedPermissions: HealthPermissions; hasAllPermissions: boolean; }>


revokeHealthPermissions()

revokeHealthPermissions() => Promise<void>

openHealthConnectSetting()

openHealthConnectSetting() => Promise<void>

aggregateGroupByPeriod(...)

aggregateGroupByPeriod(options: AggregateGroupByPeriodOptions) => Promise<AggregateByPeriodResult>
Param Type
options AggregateGroupByPeriodOptions

Returns: Promise<AggregateByPeriodResult>


aggregateGroupByDuration(...)

aggregateGroupByDuration(options: AggregateGroupByDurationOptions) => Promise<AggregateByPeriodResult>
Param Type
options AggregateGroupByDurationOptions

Returns: Promise<AggregateByPeriodResult>


aggregate(...)

aggregate(options: AggregateOptions) => Promise<AggregateResult>
Param Type
options AggregateOptions

Returns: Promise<AggregateResult>


checkReadHealthDataHistoryPermission()

checkReadHealthDataHistoryPermission() => Promise<{ hasPermission: boolean; }>

Returns: Promise<{ hasPermission: boolean; }>


requestReadHealthDataHistoryPermission()

requestReadHealthDataHistoryPermission() => Promise<{ readHealthDataHistoryStatus: ReadHealthDataHistoryPermissionStatus; }>

Returns: Promise<{ readHealthDataHistoryStatus: ReadHealthDataHistoryPermissionStatus; }>


checkReadHealthDataInBackgroundPermission()

checkReadHealthDataInBackgroundPermission() => Promise<{ hasPermission: boolean; }>

Returns: Promise<{ hasPermission: boolean; }>


requestReadHealthDataInBackgroundPermission()

requestReadHealthDataInBackgroundPermission() => Promise<{ readHealthDataInBackgroundStatus: ReadHealthDataHistoryPermissionStatus; }>

Returns: Promise<{ readHealthDataInBackgroundStatus: ReadHealthDataHistoryPermissionStatus; }>


openPlayStore()

openPlayStore() => Promise<void>

openHealthConnectSettings()

openHealthConnectSettings() => Promise<void>

Type Aliases

HealthConnectAvailability

'Available' | 'NotInstalled' | 'NotSupported'

InsertRecordsPayload

{ records: Record[]; }

Record

Construct a type with a set of properties K of type T

{ [P in K]: T; }

StoredRecord

RecordBase & T

RecordBase

{ metadata: RecordMetadata; }

RecordMetadata

{ id: string; clientRecordId?: string; clientRecordVersion: number; lastModifiedTime: string; dataOrigin: string; }

ReadRecordOptions

{ type: RecordType; recordId: string; }

RecordType

'ActiveCaloriesBurned' | 'BasalBodyTemperature' | 'BasalMetabolicRate' | 'BloodGlucose' | 'BloodPressure' | 'HeartRate' | 'HeartRateVariabilityRmssd' | 'Height' | 'OxygenSaturation' | 'RestingHeartRate' | 'SleepSession' | 'Steps' | 'Vo2Max' | 'Weight'

ReadRecordsOptions

{ type: RecordType; timeRangeFilter: TimeRangeFilter; dataOriginFilter?: string[]; ascendingOrder?: boolean; pageSize?: number; pageToken?: string; }

TimeRangeFilter

{ type: 'before' | 'after'; timeUTC: string; } | { type: 'between'; startTimeUTC: string; endTimeUTC: string; }

GetChangesTokenOptions

{ types: RecordType[]; }

Change

UpsertChange | DeleteChange

UpsertChange

{ type: 'Upsert'; record: Record; }

DeleteChange

{ type: 'Delete'; recordId: string; }

GetChangesOptions

{ token: string; }

HealthPermissions

{ read: RecordType[]; write: RecordType[]; }

AggregateByPeriodResult

{ entries: AggregateByPeriodEntry[] }

AggregateByPeriodEntry

{ type: AggregateType; startTime: string; endTime: string; result: number; }

AggregateType

'ActiveCaloriesTotal' | 'DistanceTotal' | 'ElevationGainedTotal' | 'FloorsClimbedTotal' | 'HeartBpmAvg' | 'HeartBpmMin' | 'HeartBpmMax' | 'HeartMeasurementsCount' | 'HydrationVolumeTotal' | 'PowerAvg' | 'PowerMin' | 'PowerMax' | 'SleepSessionDurationTotal' | 'StepsCountTotal' | 'TotalCaloriesBurnedTotal' | 'WheelchairPushesCountTotal'

AggregateGroupByPeriodOptions

{ type: AggregateType; timeRangeFilter: LocalTimeRangeFilter; timeRangeSlicer: TimeRangeSlicer; dataOriginFilter?: string[]; }

LocalTimeRangeFilter

{ type: 'before' | 'after'; localTime: string; } | { type: 'between'; localStartTime: string; localEndTime: string; }

TimeRangeSlicer

{ period: 'days' | 'months' | 'weeks' | 'years', count: number }

AggregateGroupByDurationOptions

{ type: AggregateType; timeRangeFilter: TimeRangeFilter; durationTimeRangeSlicer: DurationTimeRangeSlicer; dataOriginFilter?: string[]; }

DurationTimeRangeSlicer

{ duration: 'days' | 'hours' | 'minutes' | 'seconds' | 'millis'; count: number; }

AggregateResult

{ type: AggregateType; startTime: string; endTime: string; result: number; }

AggregateOptions

{ type: AggregateType; timeRangeFilter: LocalTimeRangeFilter; dataOriginFilter?: string[]; }

ReadHealthDataHistoryPermissionStatus

'NotSupported' | 'Granted' | 'Denied'

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 76.7%
  • TypeScript 13.8%
  • JavaScript 6.1%
  • Java 1.7%
  • HTML 1.6%
  • CSS 0.1%