Google fit API 根据范围添加多个数据类型

Google fit API add multiple data type based on scope

我正在使用 google fit API 与多个用户范围。如何为每个源添加多种数据类型。如果可能的话,为什么我不能将其添加为数据源。

{
   "dataStreamName":"MyDataSource",
   "type":"derived",
   "application":{
      "detailsUrl":"http://example.com",
      "name":"Foo Example App",
      "version":"1"
   },
   "dataType":[
      {
    //1st data type
         "name":"com.google.step_count.delta",
         "field":[
            {
               "name":"steps",
               "format":"int"
            }
         ]
      },
      {
    //2nd data type
         "name":"com.google.calories.bmr",
         "field":[
            {
               "name":"calories",
               "format":"float"
            }
         ]
      }
   ],
   "device":{
      "manufacturer":"Example Manufacturer",
      "model":"ExampleTablet",
      "type":"tablet",
      "uid":"1000001",
      "version":"1.0"
   }
}

我得到的回复是

{
    "error": {
        "code": 400,
        "message": "Invalid JSON payload received. Unknown name \"dataType\" at 'data_source': Proto field is not repeating, cannot start list.",
        "errors": [
            {
                "message": "Invalid JSON payload received. Unknown name \"dataType\" at 'data_source': Proto field is not repeating, cannot start list.",
                "reason": "invalid"
            }
        ],
        "status": "INVALID_ARGUMENT"
    }
}

但是当我只添加一个像这样的作用域时

{
   "dataStreamName":"MyDataSource",
   "type":"derived",
   "application":{
      "detailsUrl":"http://example.com",
      "name":"Foo Example App",
      "version":"1"
   },
   "dataType":{
         "name":"com.google.step_count.delta",
         "field":[
            {
               "name":"steps",
               "format":"integer"
            }
         ]
      },
   "device":{
      "manufacturer":"Example Manufacturer",
      "model":"ExampleTablet",
      "type":"tablet",
      "uid":"1000001",
      "version":"1.0"
   }
}

它returns我200即成功。我错过了什么或者我想做的是可能的吗?谢谢。

Google适合API参考 https://developers.google.com/fit/rest/v1/reference/users/dataSources/create

我相信您尝试做的嵌套必须在 dataField 级别而不是 dataType 级别进行。

dataType.field[]

我认为这是因为我注意到 'field[]' 是一个集合而 dataType 不是。