סוגי הנתונים

Google Fit מספק קבוצה של סוגי נתונים של בריאות ורווחה במרחב השמות com.google.

סוגי הנתונים מגדירים את הפורמט של הערכים בתוך נקודות נתונים. נקודה על הגרף יכולה לייצג:

  • קריאה או תצפית באופן מיידי
  • נתונים מצטברים עם נתונים סטטיסטיים במהלך פרק זמן מסוים

ב-Google Fit מוגדרים סוגי נתונים לתצפיות מיידיות וסוגים של נתונים מצטברים. נקודות על הגרף מורכבות מערכים של השדות של סוג הנתונים ושל חותמת הזמן. נקודות שמייצגות תצפיות מיידיות כוללות חותמת זמן ונקודות סוג של נתונים נצברים כולל גם את שעת ההתחלה של מרווח הזמן.

ב-Google Fit אפשר גם להגדיר סוגי נתונים חדשים.

קבוצות של סוגי נתונים

ב-Google Fit יש את סוגי הנתונים הבאים:

סוגי נתונים שגלויים לכולם
לסוגי הנתונים הרגילים שהפלטפורמה מספקת יש את הערך 'com.google' . לדוגמה, com.google.step_count.delta. סוגי הנתונים האלה מתעדכנת קריאה מיידית נתוני בריאות וכושר, כולל פעילות כושר, שינה ותזונה. כל אפליקציה יכולה לבקש את ההרשאות הרלוונטיות לקריאה ולכתיבה בסוגי הנתונים האלה, מלבד כמה סוגי נתוני מיקום שרק האפליקציה שכתבה אותם יכולה לקרוא אותם.

מידע נוסף זמין בדפים הבאים:

סוגי נתוני בריאות
סוגי הנתונים שסופקו על ידי הפלטפורמה שהגישה אליה הוגבלה עקב מידע שעשוי להיות רגיש. מידע נוסף זמין במאמר סוגי נתוני בריאות.
סוגי נתונים נצברים
סוגי נתונים לקריאת מידע על בריאות וכושר שמצטברים לפי זמן או סוג הפעילות. אפשר לקרוא מידע נוסף במאמר נתונים נצברים .
סוגי נתונים פרטיים בהתאמה אישית
סוגי נתונים מותאמים אישית שמוגדרים על ידי אפליקציה ספציפית. רק האפליקציה שמגדירה את סוג הנתונים יכולה לקרוא ולכתוב נתונים מהסוג הזה. מידע נוסף זמין במאמר סוגי נתונים מותאמים אישית.

שימוש בסוגי נתונים

Android

ב-Android, סוגי הנתונים מוגדרים כשדות ציבוריים של הכיתה DataType. האופן שבו מפעילים את ממשקי ה-API של Fitness עם סוג הנתונים תלוי במה שאתם רוצים להשיג:

  • כדי להקליט נתונים צריך להשתמש ב-Recording API יוצרים מינוי לכל סוג נתונים שרוצים לתעד.
  • כדי לקרוא נתונים, משתמשים ב-History API כדי לשלוח בקשת קריאה לכל סוג נתונים.
  • כדי להוסיף נתונים היסטוריים מהעבר, צריך להשתמש ב-History API כדי לשלוח בקשת הוספה לכל סוג נתונים.
  • כדי ליצור סשנים, משתמשים ב-Sessions API כדי להוסיף או לתעד נתונים עם מטא-נתונים של סשנים.

כדי ליצור נקודות נתונים לאובייקט DataType מיידי, מקצים ערכים בפורמט הנכון. בדוגמה הבאה רואים איך להקצות את פריט האוכל כמחרוזת, את סוג הארוחה באופן קבוע Field כיתה, ואת התוכן התזונתי כערכים צפים ממופים.

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

val nutrients = mapOf(
    Field.NUTRIENT_TOTAL_FAT to 0.4f,
    Field.NUTRIENT_SODIUM to 1f,
    Field.NUTRIENT_POTASSIUM to 422f
)
val banana = DataPoint.builder(nutritionSource)
    .setTimestamp(now, TimeUnit.MILLISECONDS)
    .setField(Field.FIELD_FOOD_ITEM, "banana")
    .setField(Field.FIELD_MEAL_TYPE, Field.MEAL_TYPE_SNACK)
    .setField(Field.FIELD_NUTRIENTS, nutrients)
    .build()

אחרי שמגדירים נקודות על הגרף באפליקציה, אפשר להוסיף, לקרוא או למחוק אותן נתונים היסטוריים באמצעות History API.

REST

המשאב dataSources כולל את סוג הנתונים (ורשימת השדות שלו) לכל מקור נתונים. ניתן לציין אחד מסוגי הנתונים האלה כאשר אפשר ליצור מקורות נתונים, ולקבל את השם של סוג הנתונים ורשימת השדות שכלולים בו כשמאחזרים מקור נתונים מחנות הכושר.

לדוגמה, ייצוג של מקור נתונים מציין את סוג הנתונים שלו באופן הבא:

{
"dataStreamId": "exampleDataSourceId",
...
"dataType": {
  "name": "com.google.step_count.delta"
},
...
}

היקפי ההרשאות

היקפי ההרשאות כוללים קבוצות של סוגי נתונים שמשתמשים יכולים לתת לאפליקציה הרשאות גישה. הם עוזרים למשתמשים להבין לאילו סוגי נתונים האפליקציה רוצה לגשת. בנוסף, הם מאפשרים לתת לאפליקציות הרשאה להשתמש בנתונים האלה בקלות רבה יותר, כי לא צריך לאשר כל סוג נתונים בנפרד. המשתמשים מעניקים את ההרשאות האלה אחרי הורדת את האפליקציה שלך.

דוגמה למסך ההסכמה של היקפי ההרשאות של OAuth
איור 2.מסך ההסכמה להיקפי הרשאות של OAuth.

אחרי שבדקת את האפליקציה עם מספר קטן של משתמשים, לפני ההפעלה תצטרכו לבקש אימות על סמך להיקפים רלוונטיים לסוגי הנתונים האלה. כדאי לקרוא את הדפים של סוגי הנתונים שמקושרים למעלה כדי להבין אילו היקפים חלים על כל סוג נתונים.

לדוגמה, אם האפליקציה צריכה לקרוא ולכתוב לחץ דם, היא צריך להצהיר שהוא מבצע גם קריאה וגם כתיבה ובקשה בשני ההיקפים. אם המערכת רק רושמת נתוני לחץ דם בפלטפורמת Google Fit, היא צריכה לבקש רק את היקף הכתיבה.

יש לבחור סוגי נתונים באופן אחראי. אין לבקש את כל סוגי הנתונים למקרה שהאפליקציה אולי יהיה צורך בו. הסוגים שצוינו קובעים אילו היקפים יוצגו למשתמש להעניק הרשאה ל. בקשו רק את סוגי הנתונים שהאפליקציה שלכם צריכה כדי שהמשתמשים יותר סבירות שתעניק גישה. משתמשים נותנים גישה בקלות רבה יותר להיקפים מוגבלים שמתוארים בבירור.

בטבלה הזו אפשר לבדוק אם היקפי ההרשאות שהאפליקציה שלך צריכה גישה אליהם הם רגישים או מוגבלת (וקובעים את האימות השלבים שצריך לבצע):

היקף תיאור קטגוריה
https://www.googleapis.com/auth/fitness.activity.read לקרוא נתוני פעילות מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.activity.write כתיבה של נתוני פעילות בפלטפורמת Google Fit מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.blood_glucose.read קריאת נתוני סוכר בדם מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.blood_glucose.write כתיבה של נתוני הסוכר בדם בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.blood_pressure.read קריאת נתוני לחץ דם מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.blood_pressure.write כתיבה של נתוני לחץ דם בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.body.read ניתן לקרוא את נתוני המדידה הגופנית (גובה, משקל, אחוז השומן בגוף) מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.body.write כתיבת נתונים של מדידות גופניות בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.body_temperature.read קריאת נתוני חום הגוף מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.body_temperature.write כתיבת נתונים של טמפרטורת הגוף בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.heart_rate.read קריאת נתוני דופק מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.heart_rate.write כתיבת נתוני דופק בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.location.read קריאת נתוני מיקום מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.location.write כתיבת נתוני מיקום בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.nutrition.read קריאת נתוני התזונה מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.nutrition.write כתיבה של נתוני תזונה בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.oxygen_saturation.read קריאת נתוני ריווי החמצן בדם מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.oxygen_saturation.write כתיבה של נתוני ריווי חמצן בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.reproductive_health.read קריאת נתוני פוריות מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.reproductive_health.write כתיבת נתוני פוריות בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.sleep.read קריאת נתוני שינה מפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה
https://www.googleapis.com/auth/fitness.sleep.write כתיבת נתוני שינה בפלטפורמת Google Fit. מוצר שהצפייה בו הוגבלה

הוספה של היקפי הרשאות חדשים לאפליקציה קיימת

כשמעדכנים את האפליקציה כדי לבקש היקף חדש (לדוגמה, אם מוסיפים את ההיקף החדש נתוני שינה או דופק, או להוסיף היקף קריאה), המשתמשים יתבקשו האפליקציה שלך מבקשת גישה להיקפי ההרשאות האלה, ויכולה לבחור אם להעניק או לדחות את הגישה.

מומלץ לבקש הרשאה מהמשתמשים למשאבים בזמן הצורך. פועלים לפי ההנחיות לבקשה של הרשאה מצטברת.

יש סיכוי גבוה יותר שהמשתמשים יעניקו גישה אם הם יבינו למה האפליקציה שלכם משתמשת בנתונים האלה ואיך היא עושה זאת:

  • כדאי להוסיף מסך שמזהיר או מודיע למשתמשים שהם יתבקשו את ההיקפים האלה.
  • חשוב להסביר בבירור למה האפליקציה מבקשת גישה להיקפי ההרשאות או לנתונים האלה, כדי שהמשתמשים יוכלו לקבל החלטה מושכלת.

מידע נוסף על שיטות מומלצות בנושא הרשאות לאפליקציות ל-Android