센서·건강 데이터

Samsung Health

삼성헬스에 저장된 건강 기록을 읽는 경로입니다.

기준일
이 페이지에서

수집 경로

휴대폰의 Samsung Health Data SDK를 통해 저장된 기록을 조회합니다. 워치·링·핏 또는 직접 입력으로 만들어진 기록이 먼저 삼성헬스에 들어와야 합니다. DTRAC이 웨어러블 센서를 직접 구동하는 경로가 아닙니다.

구현과 기본 활성 범위

항목타입현재 상태
운동exercise일반 자동 조회 활성
수면sleep일반 자동 조회 활성
심박수heart_rate일반 자동 조회 활성
걸음수steps조회·적재 분기 있음, 자동 조회 타입에서 제외
혈압blood_pressure조회·적재 분기 있음, 자동 조회 타입에서 제외
혈당blood_glucose조회·적재 분기 있음, 자동 조회 타입에서 제외
체온body_temperature조회·적재 분기 있음, 자동 조회 타입에서 제외
산소포화도oxygen_saturation조회·적재 분기 있음, 자동 조회 타입에서 제외

registry는 8종을 나열하지만 SamsungHealthPlugin.types는 3종입니다. 일반 초기 조회에서는 registry 목록과 플러그인의 지원 타입을 교집합으로 제한합니다. 따라서 registry의 항목만 추가해도 자동 수집된다고 안내할 수 없습니다.

저장과 시간 범위

SamsungHealthIngestionService가 기존 저장 계층을 통해 건강 지표·세션을 Room에 적재합니다. 심박은 bpm, 혈압은 mmHg, 체온은 C, 산소포화도는 % 단위를 사용합니다. 혈당 저장 분기는 조회값을 변환해 mg/dL로 적재합니다.

현재 구현의 운동·심박 등은 내부 lookback 정책을 사용하며, 수면은 전날 09:00부터 당일 09:00까지의 조회 창을 사용합니다. pull()의 기간 인자가 모든 데이터 유형에 그대로 적용된다고 가정하면 안 됩니다.

연동 조건

Samsung Health 설치, 실제 기록, 데이터 읽기 권한을 확인합니다. 외부 협업 앱으로 옮길 때는 앱 패키지명과 서명을 기준으로 하는 Samsung 앱 검증 절차를 별도로 확인해야 합니다. 현재 DTRAC의 조건이 다른 앱에 자동 승계되지는 않습니다.

다른 연동 방식과의 구별

Samsung Health Sensor SDK는 별도의 워치 센서 측정 경로이며 현재 DTRAC에 연동된 것으로 확인되지 않습니다. Health Connect는 다른 앱이 공유한 기록을 읽는 경로입니다. 세 경로의 지원 항목을 합쳐 DTRAC의 현행 수집 목록으로 표시하지 않습니다.

문서 근거

현재 작업 트리 기준 · 소스 경로 · HEAD 8213e6b7

  • app/src/main/assets/manifests/plugins/registry.json
  • plugins/samsunghealth/src/main/java/com/hdil/datacollection/plugins/samsunghealth/SamsungHealthPlugin.kt
  • plugins/samsunghealth/src/main/java/com/hdil/datacollection/plugins/samsunghealth/SamsungHealthManager.kt
  • plugins/samsunghealth/src/main/java/com/hdil/datacollection/plugins/samsunghealth/ingest/SamsungHealthIngestionService.kt
  • app/src/main/java/com/hdil/datacollection/MainActivity.kt

참고 자료

DTRAC Android연세대학교 · 이봉신 연구팀