세션은 사용자가 모든 주요 활동 목록을 쉽고 빠르게 확인할 수 있는 확인할 수 있습니다. Google 피트니스 앱 저널 페이지에 표시됩니다. 대상 예를 들어 호흡 세션, 걷기, 달리기 또는 야간 수면은 각각 세션의 예
세션은 특정 기간 동안 수집된 데이터 세트를 그룹화합니다. 활동입니다. 예를 들어 사용자가 3km를 시작하고 끝내는 시점을 추적했다면 이 경우 세션이 생성되고 이 시간 안에 있는 모든 피트니스 데이터가 기간 (예: 걸음 수, 속도, 이동 거리)이 해당 세션과 연결됩니다.
세션 자체에는 활동에 대한 세부정보가 포함되지 않습니다. 이는 데이터 세트로 그룹화됩니다. 세션에는 다음과 같은 속성이 있습니다.
- 설명적이고 친근한 이름 (예: '아침 달리기')
- 설명
- 고유 식별자
- 캡처하는 활동의 유형 (예: 달리기)
세션 사용의 이점
- 사용자에게 유용: 세션을 사용하면 활동 데이터와 운동을 이해할 수 있습니다. 자녀가 다음 날짜의 모든 활동을 확인할 수 있습니다. Google 피트니스 앱의 다이어리 페이지
- 일관된 사용자 환경: 앱 또는 호환 기기에서 활동을 허용하는 경우 추적 (사용자가 활동을 시작하고 중지할 수 있는 위치), 사용자는 이러한 운동을 통해 두 앱에서의 활동을 확인할 수 있습니다.
- 더욱 완전한 데이터: Google 피트니스는 여러 세션 정보를 보완하고 보강합니다. 이를 통해 사용자는 보다 완전한 그림으로 활용할 수 있습니다.
- Google 피트니스 플랫폼 활용: 사용자가 활동을 추적하지 않는 경우 앱이 추적을 지원하지 않아도 Google 피트니스에서 세션을 읽을 수 있습니다. 피트니스 매장에서 세부 데이터 또는 합산 데이터를 쿼리하고 자체 스키마와 Google 태그를 구현하지 않고도 사용 가능한 사용할 수 있습니다
- 사용자 참여도 증가: 사용자에게 사용 가능한 세션과 앱을 만든 앱들입니다. 이런 식으로 다른 피트니스 앱과 상호작용하면 사용자 참여도를 높일 수 있습니다
세션에 대한 사용자 승인 가져오기
세션을 읽거나 쓰려면 앱에서 사용자의 권한을 부여했는지 확인합니다. 세션에 대한 액세스는 동일한 승인 범위를 사용합니다. 데이터 유형으로 표시되며 이는 다음과 같이 요청해야 합니다.
Android
적절한
FitnessOptions
의 메서드
예를 들어 달리기와 관련된 세션을 읽으려면 다음을 선택할 수 있습니다.
val fitnessOptions = FitnessOptions.builder()
.accessActivitySessions(FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_HEART_RATE_BPM, FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_SPEED, FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_LOCATION_SAMPLE, FitnessOptions.ACCESS_READ)
.build()
이 예에서는 앱이 활동 세션 메타데이터에 액세스하도록 지정합니다. 또한 해당 세션 내에서 읽으려는 데이터 유형도 지정합니다. 이 예에서는 심박수, 속도 및 위치 데이터 유형이 사용됩니다.
REST
다음과 같이 범위를 요청합니다.
- 수면 활동 유형 세션:
<ph type="x-smartling-placeholder">
- </ph>
https://www.googleapis.com/auth/fitness.sleep.read
https://www.googleapis.com/auth/fitness.sleep.write
- 다른 모든 세션:
<ph type="x-smartling-placeholder">
- </ph>
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
세션 사용
Android
Sessions API를 사용하여 다음을 할 수 있습니다.
- 실시간으로 세션 만들기
- 피트니스 매장에 세션 삽입
- 운동 중 일시중지를 지원하려면 활동 세그먼트를 삽입하세요
- 연결된 세션 및 데이터 세트를 읽습니다.
- 다른 앱을 실행하여 앱이 만든 세션에 관한 정보 표시
- 다른 앱이 세션을 시작할 때 인텐트 수신
REST
Sessions API를 사용하여 다음을 할 수 있습니다.
- 실시간으로 세션 만들기
- 피트니스 매장에 세션 삽입
- 운동 중 일시중지를 지원하려면 활동 세그먼트를 삽입하세요
- 연결된 세션 및 데이터 세트를 읽습니다.
데이터 세트 및 세그먼트가 세션과 상호작용하는 방식
Google 피트니스:
- 데이터 세트는 특정 데이터의 데이터 포인트 세트를 나타냅니다. 특정 기간 동안의 데이터 소스 데이터 세트를 있습니다. 그러나 세션을 만드는 경우 데이터 세트를 다운로드합니다.
- 세그먼트는 세션의 데이터 세트를 사용자의 정확한 활동별로 그룹화합니다. 확인할 수 있습니다. 예를 들어 사용자가 30분 달리기( 이 세션)을 잠깐 동안 걸어온 경우에는 다음과 같이 나눌 수 있습니다. 세그먼트. 달리기 구간, 걷기의 휴식 시간, 실행할 수 있습니다
![](https://developers-dot-devsite-v2-prod.appspot.com/static/fit/images/timeline.png?authuser=19&hl=ko)
그림 1은 피트니스 매장에서 앱 A, B, C가 삽입된 시간 간격을 보여줍니다. 일부 데이터 세트 및 세션:
- 앱 A가 세션과 독립적으로 세션 1 및 A3과 함께 데이터 세트 A1 및 A2를 삽입했습니다.
- 앱 B가 세션 2와 함께 데이터 세트 B1 및 B2를 삽입했습니다.
- 앱 C가 세션과 관계없이 데이터 세트 C1을 삽입했습니다.
피트니스 매장에서 세션 데이터를 읽을 때 세션 시간 간격 내에 데이터가 자동으로 또는 세션을 만든 후에 데이터를 삽입하거나 더 이상 사용되지 않습니다. 예를 들어 피트니스에 대한 쿼리는 세션 1의 데이터는 다음과 같이 표시됩니다.
- 데이터 세트 A1
- 데이터 세트 A2
- 데이터 세트 A3에서 t1과 t2 사이의 부분
- 데이터 세트 C1에서 t1과 t2 사이의 부분
각 세션과 데이터 세트를 삽입한 앱을 확인할 수 있습니다.
세션 만들기
세션은 다음과 같은 몇 가지 방법으로 만들 수 있습니다.
- 앱은 활성 상태 또는 시간 범위 중 하나에서
<ph type="x-smartling-placeholder">
- </ph>
- 사용자가 기기에서 활동을 적극적으로 추적할 때 실시간으로 전송 (Android만 해당)
- 직접 삽입하여 수정할 수 있습니다.
- 사용자가 Google 피트니스 앱에서 운동이나 활동을 직접 추가하는 경우
세션을 만들어야 하는 경우
수면 데이터를 추가하시나요?
- 예: 세션을 만들고 이를 피트니스 저장소에 수동으로 삽입합니다. 예를 들어 수면 세션을 삽입합니다. 이 수면 추적 앱 또는 기기를 사용하는 사용자가 기기와 상호작용하지 않기 때문입니다. 수면 활동을 시작 및 중지합니다 (수동적 추적).
- 아니요 - 앱에서 사용자가 활동을 시작하고 중지할 수 있나요?
- 아니요: 세션을 만들지 않습니다. 앱의 데이터 세트만 추가하세요.
- 예 - 사용자가 Android 앱을 추적하면 실시간으로 Android API를 사용하여 세션을 만듭니다. 또는 수동으로 할 수 있습니다 REST API를 사용하여 세션을 만들고 이를 피트니스 저장소에 수동으로 삽입합니다.
- 사용자가 여러 기기에서 다양한 활동을 하는 경우 앱이 이를 감지할 수 있나요?
자세한 수준 (예: 걷기 vs 달리기)?
- 예 - 세그먼트를 추가합니다.
- 아니요 - 데이터 세트만 추가합니다. 무시 Google 피트니스에서 수동적으로 이러한 세그먼트를 만들도록 하세요.
읽기 세션
앱은 몇 가지 방법으로 세션을 읽을 수 있습니다.
- 생성/삽입한 특정 세션을 찾습니다.
<ph type="x-smartling-placeholder">
- </ph>
- 이름 또는
- ID
- 기간별로 생성/삽입한 모든 세션을 찾습니다.
- 기간별로 모든 앱 (Google 피트니스 포함)에서 생성한 사용 가능한 모든 세션을 확인합니다.
세션을 만든 소스 알아보기
사용자에게 각 세션을 생성한 앱이나 기기를 보여줄 수 있습니다. 각 세션에는 연결된 데이터 소스가 있으며, 이 데이터 소스에는 앱 또는 데이터를 수집하거나 변환한 기기입니다.
Android
현재는 Android에서 작성한 세션의 패키지 이름만 가져올 수 있습니다.
있습니다 세션을 만든 앱의 패키지 이름을 가져오려면 다음을 사용합니다.
getAppPackageName
메서드를 사용하여 지도 가장자리에
패딩을 추가할 수 있습니다. 앱에서 이 정보를 사용하여
사용자에게 피트니스 세션을
삽입한 것을 확인할 수 있습니다.
각각
앱을 사용하여 사용자가 앱을 식별할 수 있도록 합니다.
또한 공격 대상을 인텐트가 다른 앱을 실행하여 해당 앱에서 생성한 세션의 세부정보를 표시합니다. 다른 앱에서도 가능 인텐트를 실행하여 앱을 실행합니다.
피드를 만든 소스를 찾는 방법 세션에 포함될 수 있습니다.
REST
세션을 만든 Android 앱의 패키지 이름을 가져오려면 다음을 사용합니다.
session.application
속성 다음을 사용하여 생성된 세션의 경우
REST API를 사용하는 경우에는 대신 session.name
속성을 사용하세요. 이
앱에 피트니스 정보를 삽입한 다른 앱 표시
세션. 사용자가 앱을 식별할 수 있도록 각 앱의 아이콘을 표시할 수 있습니다.
있습니다.
피드를 만든 소스를 찾는 방법 세션에 포함될 수 있습니다.