Users.dataSources

Определение уникального источника данных датчика. Источники данных могут предоставлять необработанные данные, поступающие от аппаратных датчиков на локальных или сопутствующих устройствах. Они также могут предоставлять производные данные, созданные путем преобразования или слияния других источников данных. Для одного и того же типа данных может существовать несколько источников данных. Каждая точка данных, вставленная в эту службу или прочитанная из нее, имеет связанный с ней источник данных.

Источник данных содержит достаточно информации для однозначной идентификации его данных, включая аппаратное устройство и приложение, которое собирало и/или преобразовывало данные. Он также содержит полезные метаданные, такие как версии оборудования и приложений, а также тип устройства.

Каждый источник данных создает уникальный поток данных с уникальным идентификатором. Не все изменения в источнике данных влияют на идентификатор потока, поэтому данные, собранные обновленными версиями того же приложения/устройства, по-прежнему могут считаться принадлежащими к одному и тому же потоку данных.

Список методов для этого ресурса см. в конце этой страницы.

Представления ресурсов

{
  "dataStreamId": string,
  "name": string,
  "dataStreamName": string,
  "type": string,
  "dataType": {
    "name": string,
    "field": [
      {
        "name": string,
        "format": string,
        "optional": boolean
      }
    ]
  },
  "device": {
    "uid": string,
    "type": string,
    "version": string,
    "model": string,
    "manufacturer": string
  },
  "application": {
    "packageName": string,
    "version": string,
    "detailsUrl": string,
    "name": string
  },
  "dataQualityStandard": [
    string
  ]
}
Имя свойства Ценность Описание Заметки
application nested object Информация о приложении, которое передает данные датчика на платформу.
application. detailsUrl string Необязательный URI, который можно использовать для обратной связи с приложением.
application. name string Имя этого приложения. Это требуется для клиентов REST, но мы не обеспечиваем уникальность этого имени. Он предоставляется для удобства других разработчиков, которые хотели бы определить, какой REST создал приложение или источник данных.
application. packageName string Имя пакета для этого приложения. Он используется в качестве уникального идентификатора при создании приложений Android, но не может быть указан клиентами REST. Клиенты REST будут иметь свой номер проекта разработчика, отраженный в идентификаторах потоков данных источника данных, а не в packageName.
application. version string Версия приложения. Вы должны обновлять это поле всякий раз, когда приложение изменяется таким образом, что это влияет на вычисление данных.
dataQualityStandard[] list НЕ ЗАПОЛНЯЙТЕ ЭТО ПОЛЕ. Он никогда не заполняется в ответах платформы и игнорируется в запросах. В будущей версии он будет полностью удален.
dataStreamId string Уникальный идентификатор потока данных, создаваемого этим источником данных. Идентификатор включает в себя:

  • Производитель физического устройства, модель и серийный номер (UID).
  • Имя или имя пакета приложения. Имя пакета используется, когда источник данных был создан приложением Android. Номер проекта разработчика используется, когда источник данных был создан клиентом REST.
  • Тип источника данных.
  • Имя потока источника данных.
Обратите внимание, что не все атрибуты источника данных используются как часть идентификатора потока. В частности, не используется версия оборудования/приложения. Это позволяет нам сохранять один и тот же поток при обновлении версии. Это также означает, что два объекта DataSource могут представлять один и тот же поток данных, даже если они не равны.

Точный формат идентификатора потока данных, созданного приложением Android, следующий: type:dataType.name :application.packageName :device.manufacturer :device.model :device.uid :dataStreamName type:dataType.name :application.packageName :device.manufacturer :device.model :device.uid :dataStreamName type:dataType.name :application.packageName :device.manufacturer :device.model :device.uid :dataStreamName type:dataType.name :application.packageName :device.manufacturer :device.model :device.uid :dataStreamName type:dataType.name :application.packageName :device.manufacturer :device.model :device.uid :dataStreamName type:dataType.name :application.packageName :device.manufacturer :device.model :device.uid :dataStreamName

Точный формат идентификатора потока данных, созданного клиентом REST, следующий: type:dataType.name :developer project number :device.manufacturer :device.model:device.uid :dataStreamName type:dataType.name :developer project number :device.manufacturer :device.model:device.uid :dataStreamName type:dataType.name :developer project number :device.manufacturer :device.model:device.uid :dataStreamName type:dataType.name :developer project number :device.manufacturer :device.model:device.uid :dataStreamName type:dataType.name :developer project number :device.manufacturer :device.model:device.uid :dataStreamName

Если какое-либо из необязательных полей, составляющих идентификатор потока данных, отсутствует, они будут исключены из идентификатора потока данных. Минимальный допустимый идентификатор потока данных будет следующим: type:dataType.name:номер проекта разработчика.

Наконец, номер проекта разработчика и UID устройства запутываются при чтении любым клиентом REST или Android, который не создавал источник данных. Только создатель источника данных увидит номер проекта разработчика в ясной и нормальной форме. Это означает, что клиент увидит другой набор data_stream_id, чем другой клиент с другими учетными данными.

dataStreamName string Имя потока уникально идентифицирует этот конкретный источник данных среди других источников данных того же типа от того же базового производителя. Установка имени потока необязательна, но ее следует выполнять всякий раз, когда приложение предоставляет два потока для одного и того же типа данных или когда устройство имеет два эквивалентных датчика.
dataType nested object Тип данных определяет схему потока данных, собираемых, вставляемых или запрашиваемых из API фитнеса.
dataType. field[] list Поле представляет одно измерение типа данных.
dataType.field[]. format string Различные поддерживаемые форматы для каждого поля в типе данных.

Допустимые значения:
  • " blob "
  • " floatList "
  • " floatPoint "
  • " integer "
  • " integerList "
  • " map "
  • " string "
dataType.field[]. name string Определяет имя и формат данных. В отличие от имен типов данных, имена полей не имеют пространства имен и должны быть уникальными только в пределах типа данных.
dataType.field[]. optional boolean
dataType. name string Каждый тип данных имеет уникальное имя в пространстве имен. Все типы данных в пространстве имен com.google являются частью платформы.
device nested object Представление интегрированного устройства (например, телефона или носимого устройства), которое может содержать датчики.
device. manufacturer string Производитель продукта/оборудования.
device. model string Видимое для конечного пользователя имя модели устройства.
device. type string Константа, представляющая тип устройства.

Допустимые значения:
  • " chestStrap "
  • " headMounted "
  • " phone "
  • " scale "
  • " smartDisplay "
  • " tablet "
  • " unknown "
  • " watch "
device. uid string Серийный номер или другой уникальный идентификатор оборудования. Это поле запутывается при чтении любым клиентом REST или Android, который не создавал источник данных. Только создатель источника данных увидит поле uid в чистом и нормальном виде.

Обфускация сохраняет равенство; то есть при наличии двух идентификаторов, если id1 == id2, obfuscated(id1) == obfuscated(id2).

device. version string Строка версии аппаратного/программного обеспечения устройства.
name string Видимое имя конечного пользователя для этого источника данных.
type string Константа, описывающая тип этого источника данных. Указывает, производит ли этот источник данных необработанные или производные данные.

Допустимые значения:
  • " derived "
  • " raw "

Методы

Создайте
Создает новый источник данных, уникальный среди всех источников данных, принадлежащих этому пользователю.

Источник данных — это уникальный источник данных датчиков. Источники данных могут предоставлять необработанные данные, поступающие от аппаратных датчиков на локальных или сопутствующих устройствах. Они также могут предоставлять производные данные, созданные путем преобразования или слияния других источников данных. Для одного и того же типа данных может существовать несколько источников данных. Каждая точка данных в каждом наборе данных, вставленном или прочитанном из Fitness API, имеет связанный с ним источник данных.

Каждый источник данных создает уникальный поток обновлений набора данных с уникальным идентификатором источника данных. Не все изменения в источнике данных влияют на идентификатор потока данных, поэтому данные, собранные обновленными версиями одного и того же приложения/устройства, можно по-прежнему считать принадлежащими одному и тому же источнику данных.

Источники данных идентифицируются с помощью строки, сгенерированной сервером на основе содержимого создаваемого источника. Поле dataStreamId не должно быть установлено при вызове этого метода. Он будет автоматически сгенерирован сервером в правильном формате. Если dataStreamId , он должен соответствовать формату, который будет генерировать сервер. Этот формат представляет собой комбинацию некоторых полей из источника данных и имеет определенный порядок. Если он не совпадает, запрос завершится с ошибкой.

Указание DataType неизвестного типа (начинающегося с "com.google.") приведет к созданию DataSource с пользовательским типом данных . Пользовательские типы данных доступны для чтения только тому приложению, которое их создало. Пользовательские типы данных устарели ; вместо этого используйте стандартные типы данных.

В дополнение к полям источника данных, включенным в идентификатор источника данных, включается номер проекта разработчика, который проходит проверку подлинности при создании источника данных. Этот номер проекта разработчика запутывается при чтении любым другим разработчиком, читающим общедоступные типы данных.
Удалить
Удаляет указанный источник данных. Запрос завершится ошибкой, если источник данных содержит какие-либо точки данных.
получить
Возвращает указанный источник данных.
список
Список всех источников данных, видимых разработчику, с использованием предоставленных областей действия OAuth. Список не является исчерпывающим; у пользователя могут быть частные источники данных, которые видны только другим разработчикам, или вызовы с использованием других областей.
Обновить
Обновляет указанный источник данных. dataStreamId , dataType , type , dataStreamName и свойства device за исключением version не могут быть изменены.

Источники данных идентифицируются по их dataStreamId .