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](https://google-developers.gonglchuangl.net/static/fit/images/OAuth_scopes_example.png?authuser=1&hl=th)
หลังจากทดสอบแอปกับผู้ใช้กลุ่มเล็กๆ แล้ว ก่อนที่จะเปิดตัว คุณต้องขอรับการยืนยันตาม ขอบเขตที่เกี่ยวข้องกับประเภทข้อมูลเหล่านั้น อ่านข้อมูลในหน้าประเภทข้อมูลที่ลิงก์ ด้านบนเพื่อทำความเข้าใจว่าขอบเขตใดมีผลกับข้อมูลแต่ละประเภท
ตัวอย่างเช่น ถ้าแอปของคุณต้องอ่านและเขียนการเขียนความดันโลหิต ต้องประกาศว่าโปรแกรมดังกล่าวทำหน้าที่ทั้งอ่านและเขียน รวมทั้งขอขอบเขตทั้ง 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