Getting active time from Google Fit Rest API

爷,独闯天下 提交于 2019-12-31 01:26:12

问题


I am struggling with matching the "active time" returned by Fit REST API with reality.

As an example - on 12/14 I had two walks, about 45 minutes each. The api returns one of them as type 7 ("walking" - right!) and another one as type 0 (in vehicle - wrong!). However, Fit app shows both as "walking", so it apparently uses a different data source.

I checked some other days and on these days, the session with type 0 is indeed a valid "in vehicle" session.

I tried all aggregated data sources that return com.google.activity.segment. Most of them are empty, I've found data only in merge_activity_segments and platform_activity_segments (and they seem to be identical).

Google's docs have a caveat about delay in data sync, but they never specified how long this delay is. The data I am looking at is about 24 hours old - if their sync is that slow, then this API is more or less unusable.

I am using the following POST to https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate

{
    "aggregateBy": [
        {
            "dataSourceId": "derived:com.google.activity.segment:com.google.android.gms:merge_activity_segments"
        }
    ],
    "endTimeMillis": "1481788800000",
    "startTimeMillis": "1481702400000",
    "bucketByTime": {
        "period": {
            "timeZoneId": "America/Los_Angeles",
            "type": "day",
            "value": 1
        }
    }
}

For reference - activity types: https://developers.google.com/fit/rest/v1/reference/activity-types

Has anyone been able to retrieve activity time from Fit's REST API that is correct? Any suggestions?

By the way, steps and calories seem to work fine - just aggregate the following datasets:derived:com.google.calories.expended:com.google.android.gms:merge_calories_expended and derived:com.google.step_count.delta:com.google.android.gms:estimated_steps

A side note - it is probably the worst documented API from a major company I have seen.

来源:https://stackoverflow.com/questions/41173213/getting-active-time-from-google-fit-rest-api

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!