पोषण का डेटा जोड़ें

आप डेटा सोर्स बनाकर और इनका इस्तेमाल करके, Google Fit में पोषण का डेटा जोड़ सकते हैं com.google.nutrition डेटा टाइप. हर डेटा पॉइंट, सभी पोषक तत्वों की मात्रा का कम से कम इस्तेमाल किया जाता है. इस उदाहरण में, Google Analytics 4 प्रॉपर्टी में केला खाने वाले व्यक्ति के पोषण का डेटा.

डेटा सोर्स बनाना

Android

नया डेटा सोर्स बनाने के लिए, DataSource.Builder का इस्तेमाल करें. उदाहरण के लिए, nutritionSource.

val nutritionSource = DataSource.Builder()
    .setDataType(DataType.TYPE_NUTRITION)
    // ...
    .build()

आराम

नया डेटा सोर्स बनाने के लिए, REST API को कॉल करें. उदाहरण के लिए, NutritionSource.

एचटीटीपी तरीका

POST

अनुरोध का यूआरएल

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

अनुरोध का मुख्य हिस्सा

{
  "dataStreamName": "NutritionSource",
  "type": "raw",
  "application": {
    "detailsUrl": "http://example.com",
    "name": "My Example App",
    "version": "1"
  },
  "dataType": {
    "name": "com.google.nutrition",
   }
}

जवाब

अगर आपका डेटा सोर्स बन गया है, तो आपको एक 200 OK एचटीटीपी मिलेगा रिस्पॉन्स स्टेटस कोड. जवाब के मुख्य हिस्से में, JSON फ़ॉर्मैट में दिखाया गया है डेटा सोर्स के साथ-साथ datasource.dataStreamId प्रॉपर्टी. इस आईडी का इस्तेमाल करें डेटा जोड़ने के लिए dataSourceId के तौर पर.

CURL का निर्देश

$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request POST \
--header "Content-Type: application/json;encoding=utf-8" --data @nutrition-ds.json \
https://www.googleapis.com/fitness/v1/users/me/dataSources

पोषण का डेटा जोड़ना

Android

इस उदाहरण में, नया डेटा पॉइंट बनाने और पोषण जोड़ने का तरीका बताया गया है nutritionSource डेटा सोर्स का इस्तेमाल करके, केले के लिए डेटा.

val nutrients = mapOf(
    Field.NUTRIENT_TOTAL_FAT to 0.4f,
    Field.NUTRIENT_SODIUM to 1f,
    Field.NUTRIENT_SATURATED_FAT to 0.1f,
    Field.NUTRIENT_PROTEIN to 1.3f,
    Field.NUTRIENT_TOTAL_CARBS to 27.0f,
    Field.NUTRIENT_CHOLESTEROL to 0.0f,
    Field.NUTRIENT_CALORIES to 105.0f,
    Field.NUTRIENT_SUGAR to 14.0f,
    Field.NUTRIENT_DIETARY_FIBER to 3.1f,
    Field.NUTRIENT_POTASSIUM to 422f
)
val banana = DataPoint.builder(nutritionSource)
    .setTimestamp(timestamp, TimeUnit.MILLISECONDS)
    .setField(Field.FIELD_FOOD_ITEM, "banana")
    .setField(Field.FIELD_MEAL_TYPE, Field.MEAL_TYPE_SNACK)
    .setField(Field.FIELD_NUTRIENTS, nutrients)
    .build()

आराम

इस उदाहरण में, पोषण से जुड़ा डेटा जोड़ने का तरीका बताया गया है. इसके लिए, NutritionSource डेटा सोर्स. पोषण के डेटा टाइप की वैल्यू ये हैं पोषक तत्व (एक मैप), भोजन का प्रकार (4 = 'स्नैक्स'), और खाने की असली चीज़ (एक स्ट्रिंग).

एचटीटीपी तरीका

PATCH

अनुरोध का यूआरएल

  https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023999000
 

अनुरोध का मुख्य हिस्सा

    {
      "minStartTimeNs": 1574159699023000000,
      "maxEndTimeNs": 1574159699023999000,
      "dataSourceId": "datasource.dataStreamId",
      "point": [
        {
          "startTimeNanos": 1574159699023000000,
          "endTimeNanos": 1574159699023999000,
          "dataTypeName": "com.google.nutrition",
          "value": [
            {
              "mapVal": [
              {
                "key": "fat.total",
                "value": {
                  "fpVal": 0.4
                }
              },
              {
                "key": "sodium",
                "value": {
                  "fpVal": 1.0
                }
              },
              {
                "key": "fat.saturated",
                "value": {
                  "fpVal": 0.1
                }
              },
              {
                "key": "protein",
                "value": {
                  "fpVal": 1.3
                }
              },
              {
                "key": "carbs.total",
                "value": {
                  "fpVal": 27.0
                }
              },
              {
                "key": "cholesterol",
                "value": {
                  "fpVal": 0.0
                }
              },
              {
                "key": "calories",
                "value": {
                  "fpVal": 105.0
                }
              },
              {
                "key": "sugar",
                "value": {
                  "fpVal": 14.0
                }
              },
              {
                "key": "dietary_fiber",
                "value": {
                  "fpVal": 3.1
                }
              },
              {
                "key": "potassium",
                "value": {
                  "fpVal": 422.0
                }
              }
             ]
            },
            {
              "intVal": 4
            },
            {
              "strVal": "banana"
            }
          ]
        }
      ]
    }

जवाब

अगर आपका डेटा पॉइंट बन गया है, तो आपको एक 200 OK एचटीटीपी मिलेगा रिस्पॉन्स स्टेटस कोड. जवाब के मुख्य हिस्से में, JSON फ़ॉर्मैट में दिखाया गया है डेटा सेट का उपयोग करना होगा.

CURL का निर्देश

$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request PATCH \
--header "Content-Type: application/json;encoding=utf-8" --data @nutrition-data.json \
https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023999000