סוגי נתונים

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

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

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

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

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

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

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

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

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

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

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

Android

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

  • כדי לתעד נתונים, צריך להשתמש ב-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.