เซสชันคือวิธีที่ผู้ใช้สามารถดูรายการ กิจกรรมที่พวกเขาทำ โดยข้อมูลจะปรากฏในหน้าสมุดบันทึกของแอป Google Fit สำหรับ เช่น เซสชันการหายใจ การเดิน การวิ่ง หรือการนอนตอนกลางคืนนั้น ตัวอย่างของเซสชัน
เซสชันจะจัดกลุ่มชุดข้อมูลจากระยะเวลาหนึ่งๆ ซึ่งมีการรวบรวมระหว่าง กิจกรรม เช่น หากผู้ใช้ติดตามตั้งแต่เริ่มวิ่งจนถึงวิ่งเสร็จ 3 กิโลเมตร ระบบอาจสร้างเซสชันและเชื่อมโยงข้อมูลการออกกำลังกายทั้งหมดที่อยู่ในช่วงเวลานั้น (เช่น จํานวนก้าว ความเร็ว ระยะทาง) กับเซสชันนั้น
แต่เซสชันจะไม่มีรายละเอียดเกี่ยวกับกิจกรรม ขั้นตอนนี้อยู่ใน ชุดข้อมูล เซสชันมีพร็อพเพอร์ตี้ต่อไปนี้
- ชื่อที่สื่อความหมายและเข้าใจง่าย (เช่น "การวิ่งตอนเช้า")
- คำอธิบาย
- ตัวระบุที่ไม่ซ้ำกัน
- ประเภทกิจกรรมที่บันทึก (เช่น การวิ่ง)
ประโยชน์ของการใช้เซสชัน
- มีประโยชน์สำหรับผู้ใช้: เซสชันจะช่วยจัดระเบียบข้อมูลกิจกรรมและการออกกำลังกายใน ที่มีความหมายต่อผู้ใช้ พวกเขาจะสามารถดูกิจกรรมทั้งหมดของตัวเองของวันนั้นได้ใน หน้าบันทึกในแอป Google Fit
- ประสบการณ์ของผู้ใช้ที่สอดคล้องกัน: หากแอปหรืออุปกรณ์ที่ใช้ร่วมกันอนุญาตให้มีกิจกรรม การติดตาม (ที่ซึ่งผู้ใช้สามารถเริ่มและหยุดกิจกรรมได้) โดยมีเซสชันเป็นเวลา การออกกำลังกายเหล่านี้ช่วยให้ผู้ใช้เห็นกิจกรรมของตนเองในทั้ง 2 แอป
- ข้อมูลที่สมบูรณ์มากขึ้น: Google Fit ยังรวมข้อมูลจาก เพื่อเสริมและเพิ่มคุณค่าให้กับข้อมูลเซสชันของคุณ ซึ่งช่วยให้ผู้ใช้ได้รับ ภาพกิจกรรมที่สมบูรณ์ขึ้น
- ใช้ประโยชน์จากแพลตฟอร์ม Google Fit: หากผู้ใช้ไม่ได้ติดตามกิจกรรมหรือแอปของคุณไม่รองรับการติดตาม คุณจะยังอ่านเซสชันใน Google Fit ได้ คุณสามารถค้นหาข้อมูลโดยละเอียดหรือข้อมูลรวมจากที่เก็บข้อมูลฟิตเนสและดูเซสชันที่ใช้ได้โดยไม่ต้องใช้สคีมาและพื้นที่เก็บข้อมูลของคุณเอง
- การมีส่วนร่วมของผู้ใช้ที่เพิ่มขึ้น: คุณสามารถแสดงเซสชันที่มีอยู่และ ที่สร้างสิ่งเหล่านั้นขึ้นมา การโต้ตอบกับแอปฟิตเนสอื่นๆ ด้วยวิธีนี้ เพื่อเพิ่มการมีส่วนร่วมของผู้ใช้
การรับการให้สิทธิ์ผู้ใช้สำหรับเซสชัน
หากต้องการอ่านหรือเขียนเซสชัน แอปของคุณต้องมี สิทธิ์ การเข้าถึงเซสชันจะใช้ขอบเขตการให้สิทธิ์เดียวกัน เป็นประเภทข้อมูล ซึ่งคุณควรขอดังนี้
Android
ระบุประเภทเซสชันที่แอปของคุณต้องการเข้าถึง โดยใช้
จาก FitnessOptions
เช่น หากต้องการอ่านเซสชันที่เกี่ยวข้องกับการวิ่ง คุณอาจเลือก
val fitnessOptions = FitnessOptions.builder()
.accessActivitySessions(FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_HEART_RATE_BPM, FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_SPEED, FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_LOCATION_SAMPLE, FitnessOptions.ACCESS_READ)
.build()
ตัวอย่างนี้ระบุว่าแอปของคุณต้องการเข้าถึงข้อมูลเมตาเซสชันกิจกรรม และยังระบุประเภทข้อมูลที่ต้องการอ่านในเซสชันเหล่านั้นด้วย เวลา ในตัวอย่างนี้ใช้ประเภทข้อมูลอัตราการเต้นของหัวใจ ความเร็ว และตำแหน่ง
REST
ขอบเขตคำขอมีดังนี้
- เซสชันที่มีประเภทกิจกรรมการนอนหลับ
https://www.googleapis.com/auth/fitness.sleep.read
https://www.googleapis.com/auth/fitness.sleep.write
- เซสชันอื่นๆ ทั้งหมด
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
การใช้เซสชัน
Android
คุณใช้ Sessions API เพื่อทำสิ่งต่อไปนี้ได้
- สร้างเซสชันแบบเรียลไทม์
- แทรกเซสชันในฟิตเนส
- แทรกกลุ่มกิจกรรมเพื่อรองรับการหยุดชั่วคราวระหว่างออกกำลังกาย
- อ่านเซสชันและชุดข้อมูลที่เชื่อมโยงกับเซสชัน
- เปิดแอปอื่นเพื่อแสดงข้อมูลเกี่ยวกับเซสชันที่แอปสร้างขึ้น
- รับ Intent เมื่อแอปอื่นเริ่มเซสชัน
REST
คุณใช้ Sessions API เพื่อทำสิ่งต่อไปนี้ได้
- สร้างเซสชันแบบเรียลไทม์
- แทรกเซสชันในฟิตเนส
- แทรกช่วงเวลาที่ใช้ทำกิจกรรมเพื่อรองรับการหยุดชั่วคราวระหว่างการออกกำลังกาย
- อ่านเซสชันและชุดข้อมูลที่เชื่อมโยงกับเซสชัน
วิธีที่ชุดข้อมูลและกลุ่มโต้ตอบกับเซสชัน
ใน Google Fit
- datasetแสดงชุดของจุดข้อมูลจาก แหล่งข้อมูลในระยะเวลาที่เจาะจง คุณสามารถแทรกชุดข้อมูลได้ ของตัวเอง แต่หากต้องการสร้างเซสชัน คุณอาจสร้างเซสชันและชุดข้อมูลของเซสชันพร้อมกันได้ง่ายกว่า
- กลุ่มจะจัดกลุ่มชุดข้อมูลในเซสชันตามกิจกรรมที่ผู้ใช้ทําในเซสชัน ตัวอย่างเช่น หากผู้ใช้ติดตามการวิ่ง 30 นาที ( แต่ได้ใช้เวลาสักเล็กน้อยในระหว่างนี้ อาจแบ่งออกเป็น กลุ่ม จะมีการแบ่งออกเป็นช่วงการวิ่ง ช่วงพักเดิน แล้ววิ่งต่อ

รูปที่ 1 แสดงช่วงเวลาในฟิตเนสระหว่างที่แอป A, B และ C ได้ทำการแทรก ชุดข้อมูลและเซสชันบางรายการ
- แอป ก แทรกชุดข้อมูล ก1 และ ก2 ร่วมกับเซสชัน 1 และ ก3 โดยแยกจากเซสชันอื่นๆ
- แอป B ได้แทรกชุดข้อมูล B1 และ B2 ร่วมกับเซสชัน 2
- แอป C ได้แทรกชุดข้อมูล C1 โดยไม่ขึ้นอยู่กับเซสชันใดๆ
เมื่ออ่านข้อมูลเซสชันจากที่เก็บข้อมูลการออกกำลังกาย ระบบจะเชื่อมโยงข้อมูลการออกกำลังกายทั้งหมดที่อยู่ในช่วงเวลาของเซสชันนั้นกับเซสชันนั้นโดยอัตโนมัติ แม้ว่าคุณจะแทรกข้อมูลหลังจากสร้างเซสชันหรือสร้างเซสชันหลังจากมีการติดตามข้อมูลแบบไม่โต้ตอบแล้วก็ตาม เช่น ข้อความค้นหาเกี่ยวกับการออกกำลังกาย ข้อมูลจากเซสชัน 1 จะแสดง:
- ชุดข้อมูล A1
- ชุดข้อมูล A2
- ส่วนของชุดข้อมูล A3 ระหว่าง t1 ถึง t2
- ส่วนของชุดข้อมูล C1 ระหว่าง t1 ถึง t2
คุณสามารถดูได้ว่าแอปใดแทรกเซสชันและชุดข้อมูลแต่ละรายการ
การสร้างเซสชัน
การสร้างเซสชันทำได้หลายวิธี ดังนี้
- แอปของคุณสามารถสร้างเซสชันได้ใน
- แบบเรียลไทม์เมื่อผู้ใช้ติดตามกิจกรรมในอุปกรณ์หนึ่งๆ (Android เท่านั้น) หรือ
- โดยใส่รหัสด้วยตนเอง
- เมื่อผู้ใช้เพิ่มการออกกำลังกายหรือกิจกรรมด้วยตนเองในแอป Google Fit
กรณีที่ควรสร้างเซสชัน
คุณกำลังเพิ่มข้อมูลการนอนหลับใช่ไหม
- ใช่ - สร้างเซสชันและแทรกลงใน Store ฟิตเนสด้วยตนเอง ตัวอย่างเช่น การแทรกเซสชันการนอนหลับ ช่วงเวลานี้ นั่นเป็นเพราะผู้ใช้ที่มีแอปหรืออุปกรณ์ติดตามการนอนหลับจะไม่โต้ตอบกับอุปกรณ์ เพื่อเริ่มและหยุดกิจกรรมการนอนหลับ (ระบบจะติดตามแบบติดตัว)
- ไม่ - แอปอนุญาตให้ผู้ใช้เริ่มและหยุดกิจกรรมหรือไม่
- ไม่ - ไม่สร้างเซสชัน เพิ่มชุดข้อมูลจากแอปเท่านั้น
- ใช่ - เมื่อใช้ Android API คุณจะสร้างเซสชันแบบเรียลไทม์ได้หากผู้ใช้ติดตาม กิจกรรมของตนเอง หรือด้วยตนเอง ด้วย REST API ให้สร้างเซสชันและแทรกสิ่งนี้ลงใน Store การออกกำลังกายด้วยตนเอง
- แอปของคุณตรวจจับได้ไหมเมื่อผู้ใช้ทำกิจกรรมต่างๆ ในระดับที่ละเอียดยิ่งขึ้น (เช่น การเดินกับการวิ่ง)
- ใช่ - เพิ่มกลุ่ม
- ไม่ ทำได้เพียงเพิ่มชุดข้อมูลเท่านั้น ละเว้นกลุ่มเป้าหมายในตอนนี้และปล่อยให้ Google Fit สร้างกลุ่มเป้าหมายเหล่านี้แบบไม่โต้ตอบ
เซสชันการอ่าน
แอปอ่านเซสชันได้หลายวิธี ดังนี้
- ค้นหาเซสชันที่เฉพาะเจาะจงซึ่งสร้าง/แทรกโดย
- ชื่อหรือ
- รหัส
- มองหาเซสชันทั้งหมดที่สร้าง/แทรกตามระยะเวลา
- มองหาเซสชันที่มีอยู่ทั้งหมดซึ่งสร้างโดยแอปทั้งหมด (รวมถึง Google Fit) ตามช่วงเวลา
ดูว่าแหล่งที่มาใดสร้างเซสชัน
คุณสามารถแสดงให้ผู้ใช้เห็นว่าแอปหรืออุปกรณ์ใดสร้างแต่ละเซสชันของตน ชิ้น เซสชันมีแหล่งข้อมูลที่เชื่อมโยง ซึ่งมีข้อมูลเกี่ยวกับแอปหรือ อุปกรณ์ที่รวบรวมหรือเปลี่ยนแปลงข้อมูล
Android
ปัจจุบันคุณดูได้เฉพาะชื่อแพ็กเกจของเซสชันที่เขียนโดยไคลเอ็นต์ Android หากต้องการดูชื่อแพ็กเกจของแอปที่สร้างเซสชัน ให้ใช้
getAppPackageName
คุณสามารถใช้ข้อมูลนี้ในแอปเพื่อแสดงให้ผู้ใช้ทราบว่าแอปอื่นๆ ใดแทรกเซสชันการออกกำลังกาย คุณสามารถแสดงไอคอนสำหรับ
แต่ละรายการต่อไปนี้
แอปเพื่อช่วยให้ผู้ใช้ระบุแอปได้ง่าย
และคุณยังเรียกใช้ ความตั้งใจที่จะ เปิดแอปอื่นๆ เพื่อแสดงรายละเอียดของเซสชันที่ผู้ใช้สร้างขึ้น แอปอื่นๆ ยังสามารถ เริ่มการทำงานของความตั้งใจที่จะเปิดแอปของคุณ
ดูข้อมูลเพิ่มเติมเกี่ยวกับการค้นหาแหล่งที่มาที่สร้าง เซสชัน
REST
หากต้องการดูชื่อแพ็กเกจของแอป Android ที่สร้างเซสชัน ให้ใช้
session.application
สำหรับเซสชันที่สร้างขึ้นโดยใช้
API ของ REST ให้ใช้พร็อพเพอร์ตี้ session.name
แทน คุณใช้
ข้อมูลของคุณในแอปของคุณเพื่อแสดงให้ผู้ใช้เห็นว่าแอปอื่นๆ ได้แทรกเนื้อหาเกี่ยวกับการออกกำลังกายใดไว้บ้าง
เซสชัน คุณสามารถแสดงไอคอนของแต่ละแอปเหล่านี้เพื่อช่วยผู้ใช้ในการระบุแอป
ดูข้อมูลเพิ่มเติมเกี่ยวกับการค้นหาแหล่งที่มาที่สร้าง เซสชัน