אם האפליקציה צריכה לתעד מידע שלא נכלל עדיין על ידי אחד הקיימים בפלטפורמת Google Fit, ניתן ליצור סוג נתונים מותאם אישית.
יצירת סוגי נתונים מותאמים אישית
יוצרים או מציינים סוג נתונים בהתאמה אישית כדי לתעד נתונים בהתאמה אישית. כשיוצרים את בהתאמה אישית, צריך לוודא ש:
- השם של סוג הנתונים מייצג במדויק את נתוני הבסיס.
התחילית של שם סוג הנתונים תואמת לשם החבילה של האפליקציה.
Android
כדי ליצור סוג נתונים בהתאמה אישית בפעם הראשונה, משתמשים ב
ConfigClient.createCustomDataType
method:
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
סוגי הנתונים הם מאפיין של מקורות נתונים ב-API ל-REST. לצילום בהתאמה אישית, עליכם ליצור מקור נתונים ולאחר מכן לציין את סוג הנתונים:
- קריאה ל-API ל-REST כדי ליצור מקור נתונים חדש. לדוגמה,
FlexibilityMeasure
. נותנים לסוג הנתונים שם ייחודי שמייצג בצורה מדויקת את הנתונים שהוא מתעד.
מציינים את השדות של סוג הנתונים ואת הפורמטים שלהם.
שיטת 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
}
]
}
}
תגובה
אם מקור הנתונים נוצר בהצלחה, תקבלו קוד HTTP מסוג 200 OK
קוד הסטטוס של התשובה. גוף התגובה מכיל ייצוג JSON של מקור הנתונים, כולל מאפיין datasource.dataStreamId
. משתמשים במזהה הזה בתור dataSourceId
כדי להוסיף נתונים.
שימוש בסוגי נתונים מותאמים אישית
Android
המרת השם של סוג הנתונים בהתאמה אישית ממחרוזת
(com.packagename.appname.custom_data_type) לאובייקט DataType
באמצעות
ConfigClient.readDataType
. משתמשים באובייקט שמוחזר כדי insert
ולקרוא נתונים מותאמים אישית.
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
ל-API ל-REST.
הוספת נתונים בהתאמה אישית
כדי להוסיף נתונים מותאמים אישית, יוצרים מערך נתונים עם נקודות נתונים חדשות. יש לציין את מקור הנתונים שיצרתם לסוג הנתונים המותאמים אישית. נקודות הנתונים צריכות לכלול את כל השדות והפורמטים הנכונים שצוינו בסוג הנתונים המותאם אישית.
קריאת נתונים מותאמים אישית
כדי לקרוא נתונים מותאמים אישית, צריך לציין את מקור הנתונים שיצרתם לסוג הנתונים המותאם אישית כשאתם מאחזרים נקודות נתונים מפלטפורמת Google Fit.