סוגי נתונים

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

ב-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.