अगर आपके ऐप्लिकेशन को ऐसी जानकारी कैप्चर करनी है जो 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 में, डेटा टाइप, डेटा सोर्स की प्रॉपर्टी होते हैं. कस्टम डेटा कैप्चर करने के लिए, आपको डेटा सोर्स बनाना होगा. इसके बाद, डेटा टाइप तय करना होगा:
- नया डेटा सोर्स बनाने के लिए, REST API को कॉल करें. उदाहरण के लिए,
FlexibilityMeasure. डेटा टाइप को कोई ऐसा यूनीक नाम दें जो कैप्चर किए जा रहे डेटा को सही तरीके से दिखाता हो.
डेटा टाइप के फ़ील्ड और उनके फ़ॉर्मैट तय करें.
एचटीटीपी तरीका
POST
अनुरोध का यूआरएल
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 एचटीटीपी
रिस्पॉन्स स्टेटस कोड मिलेगा. जवाब के मुख्य हिस्से में, डेटा सोर्स का JSON फ़ॉर्मैट शामिल होता है. इसमें datasource.dataStreamId प्रॉपर्टी भी शामिल होती है. डेटा जोड़ने के लिए, इस आईडी को dataSourceId के तौर पर इस्तेमाल करें.
कस्टम डेटा टाइप का इस्तेमाल करना
Android
`ConfigClient.readDataType` तरीके का इस्तेमाल करके, अपने कस्टम डेटा टाइप के नाम को स्ट्रिंग
(com.packagename.appname.custom_data_type) से DataType ऑब्जेक्ट में बदलें. कस्टम डेटा डालने
और पढ़ने के लिए, दिखाए गए ऑब्जेक्ट का इस्तेमाल करें.
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
अपने कस्टम डेटा टाइप का इस्तेमाल करके, कस्टम डेटा जोड़ने या पढ़ने के लिए, आपको उनके डेटा सोर्स की ज़रूरत होगी. कस्टम डेटा टाइप के डेटा सोर्स देखने के लिए, REST API को GET
अनुरोध भेजें.
कस्टम डेटा जोड़ना
कस्टम डेटा डालने के लिए, नए डेटा पॉइंट वाला डेटासेट बनाएं. अपने कस्टम डेटा टाइप के लिए बनाया गया डेटा सोर्स तय करें. डेटा पॉइंट में, आपके कस्टम डेटा टाइप में तय किए गए सभी फ़ील्ड और फ़ॉर्मैट सही होने चाहिए.
कस्टम डेटा पढ़ना
कस्टम डेटा पढ़ने के लिए, Google Fit प्लैटफ़ॉर्म से डेटा पॉइंट वापस पाने के दौरान, अपने कस्टम डेटा टाइप के लिए बनाया गया डेटा सोर्स तय करें.