Users.dataSources

คำจำกัดความของแหล่งที่มาที่ไม่ซ้ำกันของข้อมูลเซ็นเซอร์ แหล่งข้อมูลอาจแสดงข้อมูลดิบที่มาจากเซ็นเซอร์ฮาร์ดแวร์ในอุปกรณ์ในพื้นที่หรืออุปกรณ์ที่ใช้ร่วมกัน นอกจากนี้ยังเปิดเผยข้อมูลที่ได้มาซึ่งสร้างโดยการเปลี่ยนรูปแบบหรือผสานแหล่งข้อมูลอื่นๆ ได้ด้วย ข้อมูลประเภทเดียวกันอาจมีแหล่งข้อมูลหลายแหล่งได้ ทุกจุดข้อมูลที่แทรกลงในหรืออ่านจากบริการนี้มีแหล่งข้อมูลที่เชื่อมโยง 

แหล่งข้อมูลมีข้อมูลเพียงพอที่จะระบุถึงข้อมูลได้อย่างไม่ซ้ำกัน ซึ่งรวมถึงอุปกรณ์ฮาร์ดแวร์และแอปพลิเคชันที่รวบรวมและ/หรือเปลี่ยนแปลงข้อมูล นอกจากนี้ยังมีข้อมูลเมตาที่เป็นประโยชน์ด้วย เช่น เวอร์ชันของฮาร์ดแวร์และแอปพลิเคชัน และประเภทอุปกรณ์ 

แหล่งข้อมูลแต่ละแหล่งจะสร้างสตรีมข้อมูลที่ไม่ซ้ำกัน พร้อมตัวระบุที่ไม่ซ้ำกัน การเปลี่ยนแปลงแหล่งข้อมูลบางรายการจะไม่ส่งผลต่อตัวระบุสตรีม ระบบจึงยังถือว่าข้อมูลที่รวบรวมโดยแอปพลิเคชัน/อุปกรณ์เดียวกันในเวอร์ชันที่อัปเดตแล้วอยู่ในสตรีมข้อมูลเดียวกัน

ดูรายการวิธีการสำหรับแหล่งข้อมูลนี้ที่ส่วนท้ายของหน้านี้

การนำเสนอทรัพยากร

{
  "dataStreamId": string,
  "name": string,
  "dataStreamName": string,
  "type": string,
  "dataType": {
    "name": string,
    "field": [
      {
        "name": string,
        "format": string,
        "optional": boolean
      }
    ]
  },
  "device": {
    "uid": string,
    "type": string,
    "version": string,
    "model": string,
    "manufacturer": string
  },
  "application": {
    "packageName": string,
    "version": string,
    "detailsUrl": string,
    "name": string
  },
  "dataQualityStandard": [
    string
  ]
}
ชื่อพร็อพเพอร์ตี้ ค่า คำอธิบาย Notes
application nested object ข้อมูลเกี่ยวกับแอปพลิเคชันที่ป้อนข้อมูลเซ็นเซอร์ลงในแพลตฟอร์ม
application.detailsUrl string URI ที่ไม่บังคับซึ่งสามารถใช้เพื่อลิงก์กลับไปยังแอปพลิเคชัน
application.name string ชื่อของแอปพลิเคชันนี้ ค่านี้จำเป็นสำหรับไคลเอ็นต์ REST แต่เราไม่ได้บังคับใช้ความไม่ซ้ำกันของชื่อนี้ ข้อมูลนี้มีไว้เพื่อความสะดวกสำหรับนักพัฒนาซอฟต์แวร์รายอื่นๆ ที่ต้องการระบุว่า REST ใดสร้างแอปพลิเคชันหรือแหล่งข้อมูล
application.packageName string ชื่อแพ็กเกจสำหรับแอปพลิเคชันนี้ ข้อมูลนี้ใช้เป็นตัวระบุที่ไม่ซ้ำกันเมื่อสร้างขึ้นโดยแอปพลิเคชัน Android แต่ไคลเอ็นต์ REST จะระบุไม่ได้ ไคลเอ็นต์ REST จะมีหมายเลขโปรเจ็กต์นักพัฒนาแอปแสดงอยู่ในรหัสสตรีมข้อมูลแหล่งข้อมูล แทน packageName
application.version string เวอร์ชันของแอปพลิเคชัน คุณควรอัปเดตฟิลด์นี้เมื่อใดก็ตามที่แอปพลิเคชันมีการเปลี่ยนแปลงในลักษณะที่ส่งผลต่อการคำนวณข้อมูล
dataQualityStandard[] list อย่าใส่ข้อมูลในช่องนี้ โดยจะไม่สร้างในคำตอบจากแพลตฟอร์มและจะไม่นำไปพิจารณาในคำค้นหา เราจะนำฟีเจอร์นี้ออกในเวอร์ชันในอนาคตทั้งหมด
dataStreamId string ตัวระบุที่ไม่ซ้ำกันสําหรับสตรีมข้อมูลที่สร้างโดยแหล่งข้อมูลนี้ ตัวระบุประกอบด้วย:

  • ผู้ผลิตอุปกรณ์ รุ่น และหมายเลขซีเรียล (UID) ของอุปกรณ์จริง
  • ชื่อแพ็กเกจของแอปพลิเคชัน ระบบจะใช้ชื่อแพ็กเกจเมื่อแอปพลิเคชัน Android สร้างแหล่งข้อมูล ระบบจะใช้หมายเลขโปรเจ็กต์ของนักพัฒนาซอฟต์แวร์เมื่อไคลเอ็นต์ REST สร้างแหล่งข้อมูล
  • ประเภทของแหล่งข้อมูล
  • ชื่อสตรีมของแหล่งข้อมูล
โปรดทราบว่าแอตทริบิวต์บางรายการของแหล่งข้อมูลไม่ได้นำมาใช้เป็นส่วนหนึ่งของตัวระบุสตรีม โดยเฉพาะอย่างยิ่ง จะไม่มีการใช้เวอร์ชันของฮาร์ดแวร์/แอปพลิเคชัน วิธีนี้ช่วยให้เราคงสตรีมเดิมไว้ได้ด้วยการอัปเดตเวอร์ชัน ซึ่งหมายความว่าออบเจ็กต์แหล่งข้อมูล 2 รายการอาจแสดงสตรีมข้อมูลเดียวกันแม้ไม่เท่ากันก็ตาม

รูปแบบที่แน่นอนของรหัสสตรีมข้อมูลที่แอปพลิเคชัน 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 หมายเลขโปรเจ็กต์

สุดท้าย หมายเลขโปรเจ็กต์ของนักพัฒนาซอฟต์แวร์และ UID ของอุปกรณ์จะถูกทำให้สับสนเมื่ออ่านโดยไคลเอ็นต์ REST หรือ Android ที่ไม่ได้สร้างแหล่งข้อมูล เฉพาะผู้สร้างแหล่งข้อมูลเท่านั้นที่จะเห็นหมายเลขโปรเจ็กต์นักพัฒนาซอฟต์แวร์ในรูปแบบที่ชัดเจนและเป็นปกติ ซึ่งหมายความว่าลูกค้าจะเห็นชุด data_stream_ids ต่างจากไคลเอ็นต์อีกรายที่มีข้อมูลเข้าสู่ระบบต่างกัน

dataStreamName string ชื่อสตรีมจะระบุแหล่งข้อมูลเฉพาะนี้โดยไม่ซ้ำกัน ร่วมกับแหล่งข้อมูลอื่นๆ ในประเภทเดียวกันจากผู้ผลิตรายเดิม การตั้งชื่อสตรีมนั้นไม่บังคับ แต่ควรทำเมื่อแอปพลิเคชันแสดงสตรีม 2 รายการสำหรับข้อมูลประเภทเดียวกัน หรือเมื่ออุปกรณ์มีเซ็นเซอร์ 2 ตัวที่เทียบเท่ากัน
dataType nested object ประเภทข้อมูลจะกำหนดสคีมาสำหรับสตรีมข้อมูลที่รวบรวมโดย แทรก หรือสอบถามจาก Fitness API
dataType.field[] list ช่องจะแสดงมิติข้อมูล 1 รายการของประเภทข้อมูล
dataType.field[].format string รูปแบบที่รองรับที่แตกต่างกันสำหรับแต่ละช่องในประเภทข้อมูล

ค่าที่ยอมรับมีดังนี้
  • "blob"
  • "floatList"
  • "floatPoint"
  • "integer"
  • "integerList"
  • "map"
  • "string"
dataType.field[].name string กำหนดชื่อและรูปแบบของข้อมูล ชื่อช่องต่างจากชื่อประเภทข้อมูลตรงที่เป็นเนมสเปซ และต้องไม่ซ้ำกันภายในประเภทข้อมูลนั้นๆ เท่านั้น
dataType.field[].optional boolean
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 หมายเลขซีเรียลหรือรหัสที่ไม่ซ้ำกันอื่นๆ สำหรับฮาร์ดแวร์ ช่องนี้จะมีการปรับให้ยากต่อการอ่าน (Obfuscate) เมื่ออ่านโดยไคลเอ็นต์ REST หรือ Android ที่ไม่ได้สร้างแหล่งข้อมูล เฉพาะผู้สร้างแหล่งข้อมูลเท่านั้นที่จะเห็นช่อง UID ในรูปแบบปกติและชัดเจน

การสร้างความสับสนจะรักษาความเท่าเทียม กล่าวคือ หากเป็น 2 รหัส หาก id1 == id2, obfuscated(id1) == obfuscated(id2)

device.version string สตริงเวอร์ชันสำหรับฮาร์ดแวร์/ซอฟต์แวร์ของอุปกรณ์
name string ชื่อที่ผู้ใช้ปลายทางมองเห็นได้ของแหล่งข้อมูลนี้
type string การอธิบายประเภทของแหล่งข้อมูลนี้อย่างต่อเนื่อง ระบุว่าแหล่งข้อมูลนี้สร้างข้อมูลดิบหรือข้อมูลที่ได้รับมา

ค่าที่ยอมรับมีดังนี้
  • "derived"
  • "raw"

วิธีการ

สร้าง
สร้างแหล่งข้อมูลใหม่ที่ไม่ซ้ำกันในแหล่งข้อมูลทั้งหมดที่เป็นของผู้ใช้รายนี้

แหล่งข้อมูลคือแหล่งข้อมูลที่ไม่ซ้ำกันของข้อมูลเซ็นเซอร์ แหล่งข้อมูลอาจแสดงข้อมูลดิบที่มาจากเซ็นเซอร์ฮาร์ดแวร์ในอุปกรณ์เฉพาะที่หรืออุปกรณ์ที่ใช้ร่วมกันได้ นอกจากนี้ยังเปิดเผยข้อมูลที่ได้มาซึ่งสร้างโดยการเปลี่ยนรูปแบบหรือรวมแหล่งข้อมูลอื่นๆ ด้วย ข้อมูลประเภทเดียวกันอาจมีแหล่งข้อมูลหลายแหล่งได้ ทุกจุดข้อมูลในทุกชุดข้อมูลที่แทรกหรืออ่านจาก Fitness API มีแหล่งข้อมูลที่เชื่อมโยง

แหล่งข้อมูลแต่ละแหล่งจะสร้างสตรีมการอัปเดตชุดข้อมูลที่ไม่ซ้ำกัน ซึ่งมีตัวระบุแหล่งข้อมูลที่ไม่ซ้ำกัน การเปลี่ยนแปลงแหล่งข้อมูลบางรายการจะไม่มีผลกับรหัสสตรีมข้อมูล ระบบจึงยังถือว่าข้อมูลที่รวบรวมโดยแอปพลิเคชัน/อุปกรณ์เดียวกันในเวอร์ชันที่อัปเดตแล้วอยู่ในแหล่งข้อมูลเดียวกัน

ระบบจะระบุแหล่งข้อมูลโดยใช้สตริงที่เซิร์ฟเวอร์สร้างขึ้น โดยอิงตามเนื้อหาของแหล่งที่มาที่สร้างขึ้น ไม่ควรตั้งค่าช่อง dataStreamId เมื่อเรียกใช้เมธอดนี้ ซึ่งเซิร์ฟเวอร์จะสร้างขึ้นโดยอัตโนมัติด้วยรูปแบบที่ถูกต้อง หากตั้งค่า dataStreamId ไว้ ค่าดังกล่าวต้องตรงกับรูปแบบที่เซิร์ฟเวอร์จะสร้าง รูปแบบนี้จะรวมช่องบางช่องจากแหล่งข้อมูลเข้าด้วยกัน และมีลำดับที่เฉพาะเจาะจง หากไม่ตรงกัน คำขอจะล้มเหลวโดยมีข้อผิดพลาด

การระบุ DataType ที่ไม่ใช่ประเภทที่รู้จัก (ขึ้นต้นด้วย "com.google.") จะสร้างแหล่งข้อมูลที่มีประเภทข้อมูลที่กำหนดเอง แอปพลิเคชันที่สร้างประเภทข้อมูลที่กำหนดเองจะอ่านได้เฉพาะประเภทข้อมูลที่กำหนดเองเท่านั้น ระบบจะเลิกใช้งานประเภทข้อมูลที่กำหนดเอง โปรดใช้ประเภทข้อมูลมาตรฐานแทน

นอกเหนือจากช่องแหล่งข้อมูลที่รวมอยู่ในรหัสแหล่งข้อมูลแล้ว ยังมีหมายเลขโปรเจ็กต์ของนักพัฒนาซอฟต์แวร์ที่ผ่านการตรวจสอบสิทธิ์เมื่อสร้างแหล่งข้อมูลด้วย หมายเลขโปรเจ็กต์ของนักพัฒนาซอฟต์แวร์นี้จะมีการสร้างความสับสนเมื่อนักพัฒนาซอฟต์แวร์รายอื่นๆ อ่านข้อมูลสาธารณะประเภทต่างๆ
ลบ
ลบแหล่งข้อมูลที่ระบุ คำขอจะล้มเหลวหากแหล่งข้อมูลมีจุดข้อมูล
รับ
แสดงผลแหล่งข้อมูลที่ระบุ
list
แสดงรายการแหล่งข้อมูลทั้งหมดที่นักพัฒนาแอปมองเห็นได้โดยใช้ขอบเขต OAuth ที่มีให้ รายการนี้ไม่ครอบคลุมทั้งหมด ผู้ใช้อาจมีแหล่งข้อมูลส่วนตัวที่ปรากฏเฉพาะกับนักพัฒนาซอฟต์แวร์รายอื่น หรือเรียกใช้โดยใช้ขอบเขตอื่น
อัปเดต
อัปเดตแหล่งข้อมูลที่ระบุ แก้ไขพร็อพเพอร์ตี้ dataStreamId, dataType, type, dataStreamName และ device ไม่ได้ ยกเว้น version

dataStreamId เป็นตัวระบุแหล่งข้อมูล