カスタムデータ型

まだ定義されていない情報をアプリでキャプチャする必要がある場合は、 Google Fit プラットフォームで既存のデータタイプを使用している場合は、カスタムデータタイプを作成できます。

カスタムデータ型の作成

カスタムデータをキャプチャするカスタムデータ型を作成または指定します。リージョン 追加する場合は、次のことを確認してください。

  • データ型名が基になるデータを正確に表している。
  • データ型名の接頭辞がアプリのパッケージ名と一致している。

Android

カスタムデータ型を初めて作成する場合は、 ConfigClient.createCustomDataType メソッド:

val request = DataTypeCreateRequest.Builder()
    // The prefix of your data type name must match your app's package name
    .setName("com.packagename.appname.custom_data_type") // Add some custom fields, both int and float
    .addField("field1", Field.FORMAT_INT32)
    .addField("field2", Field.FORMAT_FLOAT)
    // Add some common fields
    .addField(Field.FIELD_ACTIVITY)
    .build()

Fitness.getConfigClient(this, account)
    .createCustomDataType(request)
    .addOnSuccessListener { dataType ->
        // Use this custom data type to insert data into your app.
        Log.d(TAG, "Created data type: ${dataType.name}")
    }

REST

REST API では、データ型はデータソースのプロパティです。キャプチャ カスタムデータを作成するには、データソースを作成してからデータ型を指定する必要があります。

  1. REST API を呼び出して新しいデータソースを作成します。例: FlexibilityMeasure
  2. データ型に、キャプチャするデータをよく表す一意の名前を付けます。

  3. データ型のフィールドとその形式を指定します。

HTTP メソッド

POST

リクエスト URL

https://www.googleapis.com/fitness/v1/users/me/dataSources

リクエストの本文

{
  "dataStreamName": "FlexibilityMeasure",
  "type": "raw",
  "application": {
    "detailsUrl": "http://recoveryapps.com",
    "name": "Stretch Flex",
    "version": "1"
  },
  "dataType": {
    "name": "com.recoveryapps.stretchflex.flexibility",
    "field": [
     {
      "name": "ankle_range_degrees",
      "format": "integer"
     },
     {
      "name": "wrist_range_degrees",
      "format": "integer",
      "optional": true
     }
    ]
   }
}

レスポンス

データソースが正常に作成されると、200 OK HTTP が表示されます。 レスポンス ステータス コード。レスポンスの本文には、レスポンスの JSON 表現が データソース(datasource.dataStreamId プロパティを含む)。この ID を使用 dataSourceId として指定します。

カスタムデータ型の使用

Android

カスタムデータ型の名前を文字列から変換します (com.packagename.appname.custom_data_type)を DataType オブジェクトに変換するために、 ConfigClient.readDataType メソッドを使用します。返されたオブジェクトを使用して挿入します カスタムデータを読み取ります。

Fitness.getConfigClient(this, account)
    .readDataType("com.packagename.appname.custom_data_type")
    .addOnSuccessListener { dataType ->
        // Use this custom data type to insert data into your app.
        Log.d(TAG, "Retrieved data type: ${dataType.name}")
    }

REST

カスタムデータ型を使用してカスタムデータを追加または読み取るには、そのデータが必要です あります。カスタムデータ型のデータソースを確認するには、GET を送信します。 リクエストを REST API に送信します

カスタムデータの追加

カスタムデータを挿入するには、新しいデータポイントを含むデータセットを作成します。具体的な カスタムデータ型用に作成したデータソースですデータポイントは カスタムデータ型に指定されたすべての正しいフィールドと形式があることを確認します。

カスタムデータの読み取り

カスタムデータを読み取るには、カスタムクエリ用に作成したデータソースを指定します。 Google Fit プラットフォームからデータポイントを取得する場合。