ประเภทข้อมูล

Google Fit มีชุดข้อมูลด้านสุขภาพและความแข็งแรงสมบูรณ์ภายใต้เนมสเปซ com.google

ประเภทข้อมูลจะกำหนดรูปแบบของค่าภายในจุดข้อมูล จุดข้อมูลสามารถแสดงสิ่งต่อไปนี้

  • การอ่านหรือการสังเกตแบบทันที
  • ผลรวมกับสถิติในช่วงเวลาหนึ่งๆ

Google Fit กำหนดประเภทข้อมูลสำหรับการสังเกตการณ์ทันทีและประเภทข้อมูลสำหรับการรวม จุดข้อมูลประกอบด้วยค่าสำหรับช่องของประเภทข้อมูลและข้อมูลการประทับเวลา จุดที่แสดงถึงการสังเกตแบบทันที ได้แก่ การประทับเวลา และจุดของ ประเภทข้อมูลรวมยังรวมเวลาเริ่มต้นของช่วงเวลาดังกล่าวด้วย

Google Fit ยังให้คุณกำหนดประเภทข้อมูลใหม่ๆ ได้ด้วย

กลุ่มประเภทข้อมูล

Google Fit มีข้อมูลประเภทต่อไปนี้

ประเภทข้อมูลสาธารณะ
ประเภทข้อมูลมาตรฐานที่แพลตฟอร์มให้บริการจะมีคำว่า "com.google" คำนำหน้า เช่น com.google.step_count.delta ข้อมูลประเภทเหล่านี้จะบันทึกข้อมูลที่อ่านได้ทันใจสำหรับ ข้อมูลด้านสุขภาพและความแข็งแรงสมบูรณ์ รวมถึงกิจกรรมการออกกำลังกาย การนอนหลับ และโภชนาการ ช่วง แอปสามารถขอสิทธิ์ที่เกี่ยวข้องเพื่ออ่านและเขียนข้อมูลประเภทเหล่านี้ ยกเว้นข้อมูลตำแหน่ง 2-3 ประเภทซึ่งมีเพียงแอปที่สามารถอ่านได้ เขียนถึง

ดูข้อมูลเพิ่มเติมได้ที่

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

การใช้ประเภทข้อมูล

Android

ใน Android ประเภทข้อมูลคือช่องสาธารณะของ DataType วิธีเรียกใช้ Fitness 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

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

ตัวอย่างเช่น ถ้าแอปของคุณต้องอ่านและเขียนการเขียนความดันโลหิต ต้องประกาศว่าโปรแกรมดังกล่าวทำหน้าที่ทั้งอ่านและเขียน รวมทั้งขอขอบเขตทั้ง 2 แบบ หากเป็น การเขียนข้อมูลความดันโลหิตไปยังแพลตฟอร์ม 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