콘텐츠로 이동

kindFromAndroidExerciseType — @gj-kit/expo-workouts

@gj-kit/expo-workouts에서 공개하는 function입니다. package version 0.1.1의 release declaration을 그대로 표시합니다.

import { kindFromAndroidExerciseType } from '@gj-kit/expo-workouts';
/**
* Health Connect exerciseType → WorkoutKind + indoor. TOTAL over `number`, same contract as above.
*
* ⚠ **The raw value is already destroyed before it reaches us.** Health Connect's
* `IntDefMappingsKt` collapses any unmapped int to 0 (`EXERCISE_TYPE_OTHER_WORKOUT`) on BOTH the
* read and the write IPC path. So for a future activity `platformData.android.exerciseType` reads
* 0, not the real value, and `'other'` is all the information that exists.
*
* `indoor` is only decidable for the four kinds with a constant PAIR; for the other five it is
* `undefined` because Health Connect stores the fact nowhere.
*
* Android has no read-aliases: every Health Connect constant we accept, we also emit.
*/
declare function kindFromAndroidExerciseType(raw: number): {
kind: WorkoutKind;
indoor?: boolean | undefined;
};

이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.

  • 패키지: @gj-kit/expo-workouts
  • 버전: 0.1.1
  • 공개 entry: .
  • 소스: GitHub

Health Connect exerciseType → WorkoutKind + indoor. TOTAL over number, same contract as above.

The raw value is already destroyed before it reaches us. Health Connect’s IntDefMappingsKt collapses any unmapped int to 0 (EXERCISE_TYPE_OTHER_WORKOUT) on BOTH the read and the write IPC path. So for a future activity platformData.android.exerciseType reads 0, not the real value, and 'other' is all the information that exists.

indoor is only decidable for the four kinds with a constant PAIR; for the other five it is undefined because Health Connect stores the fact nowhere.

Android has no read-aliases: every Health Connect constant we accept, we also emit.