Users.dataSources: update

עדכון מקור הנתונים שצוין. dataStreamId, dataType, type, dataStreamName וגם device נכסים, מלבד version, ולא ניתן לשנות אותו.

מקורות נתונים מזוהים לפי dataStreamId שלהם. רוצים לנסות עכשיו?

בקשה

בקשת HTTP

PUT https://www.googleapis.com/fitness/v1/users/userId/dataSources/dataSourceId

פרמטרים

שם הפרמטר ערך תיאור
פרמטרים של נתיב
dataSourceId string מזהה מקור הנתונים של מקור הנתונים שצריך לעדכן.
userId string מעדכנים את מקור הנתונים של האדם שזוהה. שימוש ב-me כדי לציין את המשתמש המאומת. בשלב הזה יש תמיכה רק ב-me בזמן האימון.

אישור

הבקשה הזו מחייבת הרשאה עם לפחות אחד מההיקפים הבאים:

היקף
https://www.googleapis.com/auth/fitness.activity.write
https://www.googleapis.com/auth/fitness.location.write
https://www.googleapis.com/auth/fitness.body.write
https://www.googleapis.com/auth/fitness.nutrition.write
https://www.googleapis.com/auth/fitness.blood_pressure.write
https://www.googleapis.com/auth/fitness.blood_glucose.write
https://www.googleapis.com/auth/fitness.oxygen_saturation.write
https://www.googleapis.com/auth/fitness.body_temperature.write
https://www.googleapis.com/auth/fitness.reproductive_health.write

מידע נוסף זמין בדף אימות והרשאה.

גוף הבקשה

בגוף הבקשה, מציינים משאב Users.dataSources עם המאפיינים הבאים:

שם הנכס ערך תיאור הערות
המאפיינים הנדרשים
application nested object מידע על אפליקציה שמזינה נתוני חיישנים לפלטפורמה.
application.name string השם של האפליקציה הזו. זה שדה חובה בלקוחות REST, אבל אנחנו לא אוכפים את הייחודיות של השם הזה. מטעמי נוחות, מפתחים אחרים שרוצים לזהות איזה REST יצר אפליקציה או מקור נתונים.
dataStreamId string מזהה ייחודי של מקור הנתונים שמופק על ידי מקור הנתונים הזה. המזהה כולל:

  • היצרן, הדגם והמספר הסידורי (UID) של המכשיר הפיזי.
  • שם החבילה או שם החבילה של האפליקציה. נעשה שימוש בשם החבילה כאשר מקור הנתונים נוצר על ידי אפליקציה ל-Android. מספר הפרויקט של המפתח נמצא בשימוש כשמקור הנתונים נוצר על ידי לקוח REST.
  • הסוג של מקור הנתונים.
  • שם מקור הנתונים של מקור הנתונים.
שימו לב שלא כל המאפיינים של מקור הנתונים משמשים כחלק ממזהה מקור הנתונים. באופן ספציפי, לא נעשה שימוש בגרסת החומרה או האפליקציה. כך אנחנו יכולים לשמר את אותו שידור באמצעות עדכוני גרסאות. המשמעות היא גם ששני אובייקטים של DataSource עשויים לייצג את אותו מקור נתונים, גם אם הם לא זהים.

הפורמט המדויק של מזהה מקור הנתונים שנוצר על ידי אפליקציה ל-Android הוא: type:dataType.name:application.packageName:device.manufacturer:device.model:device.uid:dataStreamName

הפורמט המדויק של מזהה מקור הנתונים שנוצר על ידי לקוח REST הוא: type:dataType.name:developer project number:device.manufacturer:device.model:device.uid:dataStreamName

אם חסרים שדות אופציונליים שמרכיבים את מזהה מקור הנתונים, הם יוסרו מהמזהה של מקור הנתונים. המזהה המינימלי של מקור נתונים בר-קיימא יהיה: type:dataType.name:developer project number

לבסוף, מספר הפרויקט של המפתח וה-UID של המכשיר מעורפלים כשהם נקראים על ידי כל לקוח REST או לקוח Android שלא יצרו את מקור הנתונים. רק היוצר של מקור הנתונים יראה את מספר פרויקט המפתח בצורה ברורה ורגילה. כלומר, לקוח יראה קבוצה שונה של data_stream_id לעומת לקוח אחר עם פרטי כניסה שונים.

dataType nested object סוג הנתונים מגדיר את הסכימה של מקור נתונים שנאסף על ידי ממשק ה-Fitness API, נוסף אליו או נשלחת לגביו שאילתות.
dataType.field[] list שדה מייצג מאפיין אחד של סוג נתונים.
dataType.field[].format string הפורמטים הנתמכים השונים לכל שדה בסוג הנתונים.

הערכים הקבילים הם:
  • "blob"
  • "floatList"
  • "floatPoint"
  • "integer"
  • "integerList"
  • "map"
  • "string"
dataType.field[].name string מגדיר את השם והפורמט של הנתונים. בניגוד לשמות של סוגי נתונים, שמות של שדות לא ממרחב שמות והם צריכים להיות ייחודיים רק בסוג הנתונים.
dataType.name string לכל סוג נתונים יש שם ייחודי במרחב שמות. כל סוגי הנתונים במרחב השמות של com.google משותפים כחלק מהפלטפורמה.
device nested object ייצוג של מכשיר משולב (כמו טלפון או גאדג'ט לביש) שיכול להחזיק חיישנים.
device.manufacturer string היצרן של המוצר או החומרה.
device.model string שם הדגם של המכשיר שגלוי למשתמש הקצה.
device.type string קבוע שמייצג את סוג המכשיר.

הערכים הקבילים הם:
  • "chestStrap"
  • "headMounted"
  • "phone"
  • "scale"
  • "smartDisplay"
  • "tablet"
  • "unknown"
  • "watch"
device.uid string המספר הסידורי או מזהה ייחודי אחר של החומרה. השדה הזה מעורפל כשהקריאה מתבצעת על ידי כל לקוח REST או Android שלא יצר את מקור הנתונים. רק יוצר מקור הנתונים יראה את שדה ה-uid בצורה ברורה ורגילה.

השימוש בערפול קוד (obfuscation) מאפשר לשמור על שוויון. כלומר, בהינתן שני מזהים, כאשר id1 == id2, obfuscated(id1) == obfuscated(id2).

device.version string מחרוזת גרסה של החומרה/התוכנה של המכשיר.
type string קבוע שמתאר את הסוג של מקור הנתונים הזה. מציין אם מקור הנתונים הזה מפיק נתונים גולמיים או נגזרים.

הערכים הקבילים הם:
  • "derived"
  • "raw"

תשובה

אם הפעולה בוצעה ללא שגיאות, השיטה הזו מחזירה משאב Users.dataSources בגוף התגובה.

נסה בעצמך!

אפשר להשתמש ב-APIs Explorer שבהמשך כדי להפעיל את השיטה הזו בנתונים בזמן אמת ולראות את התגובה.