docs(train): Health Connect through Kotlin of our own (ADR 0030, D30)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
0dbe81b336
commit
2fae7e4f3b
1 changed files with 12 additions and 1 deletions
|
|
@ -1,6 +1,6 @@
|
|||
# ADR 0030: Halkyon Train, what it does and where its data comes from
|
||||
|
||||
- **Status:** decided 27–28 Oct 2026, by the developer (D1–D29 below). The shell (D12)
|
||||
- **Status:** decided 27–28 Oct 2026, by the developer (D1–D30 below). The shell (D12)
|
||||
is built; recording (D13–D28) is built on Android, iOS waiting for a Mac; Health
|
||||
Connect (D29) comes next.
|
||||
- **Numbering:** 0025 is held by the federation draft (stashed), 0026–0029 by the .NET
|
||||
|
|
@ -473,6 +473,17 @@ Strava. What was found, 27 Oct:
|
|||
firmware, and new kinds of data (daily activity, sleep, 24/7 heart rate, Nightly
|
||||
Recharge) with synced models of their own; it is tried only with the band at hand.
|
||||
The intervals (D2) need neither.
|
||||
- **D30 Health Connect through Kotlin of our own** (recommended, the developer's; revises
|
||||
D6's `health` package, as D26 revised D5): `androidx.health.connect:connect-client`
|
||||
(Apache-2.0, AndroidX, no Play services) behind a channel of Train's, as the strap's.
|
||||
The `health` package (13.3.2) lacks power, cadence, elevation gained, distance and
|
||||
speed as records of their own, ties no heart rate to its session, has no changes API
|
||||
(so each read would be a whole window read again) and sets no client record ID (so a
|
||||
workout written again would be a second copy, not a replacement). Our own gets every
|
||||
record type, the changes API, Train's workout ID as the client record ID (written
|
||||
again replaces, deleted deletes) and each record's origin. Its logic is tested on the
|
||||
JVM, the Dart side on a fake platform; Apple Health needs Swift of its own later,
|
||||
as iOS waits for a Mac anyway (D25).
|
||||
|
||||
## Consequences
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue