Özel veri türleri

Uygulamanızın, Google Fit platformunda mevcut veri türleri varsa özel bir veri türü oluşturabilirsiniz.

Özel veri türleri oluşturma

Özel verileri yakalamak için özel bir veri türü oluşturun veya belirtin. Oluştururken özel veri türlerini kullanıyorsanız şunlara dikkat edin:

  • Veri türü adı, temel verileri doğru şekilde temsil eder.
  • Veri türü adının öneki, uygulamanızın paket adıyla eşleşir.

Android

İlk kez özel bir veri türü oluşturmak için ConfigClient.createCustomDataType yöntem:

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

Veri türleri, REST API'deki veri kaynaklarının bir mülküdür. Fotoğraf çekmek için özel veriler oluşturmak için bir veri kaynağı oluşturmanız ve ardından veri türünü belirtmeniz gerekir:

  1. Yeni bir veri kaynağı oluşturmak için REST API'yi çağırın. Örneğin, FlexibilityMeasure.
  2. Bu veri türüne, yakaladığı verileri yakından temsil eden benzersiz bir ad verin.

  3. Veri türü alanlarını ve biçimlerini belirtin.

HTTP yöntemi

POST

İstek URL'si

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

İstek metni

{
  "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
     }
    ]
   }
}

Yanıt

Veri kaynağınız başarıyla oluşturulduysa 200 OK HTTP alırsınız yanıt durum kodu. Yanıt gövdesi, şunun JSON temsilini içerir: datasource.dataStreamId özelliği de dahil olmak üzere veri kaynağı. Bu kimliği kullan dataSourceId olarak belirleyin.

Özel veri türlerini kullanma

Android

Özel veri türünüzün adını dizeden dönüştürme (com.packagename.appname.custom_data_type) bir DataType nesnesine dönüştürmeyi ConfigClient.readDataType yöntemini kullanabilirsiniz. Döndürülen nesneyi insert için kullanın. ve özel verileri okuyun.

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

Özel veri türlerinizi kullanarak özel veriler eklemek veya okumak için verilerin verileri gerekir kaynaklar. Özel bir veri türünün veri kaynaklarını kontrol etmek için GET gönderin isteği gönderin.

Özel veriler ekleme

Özel veri eklemek için yeni veri noktaları içeren bir veri kümesi oluşturun. Belirtin: özel veri türünüz için oluşturduğunuz veri kaynağıdır. Veri noktaları, Özel veri türünüzde belirtilen tüm doğru alan ve biçimlere sahip olmalıdır.

Özel verileri okuma

Özel verileri okumak istiyorsanız özel için oluşturduğunuz veri kaynağını belirtin. veri türünü ifade eder.