จำลองข้อมูลเซ็นเซอร์ด้วยบริการข้อมูลสุขภาพ

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

หากทดสอบบนโปรแกรมจำลองที่ใช้ Wear OS 3 (API ระดับ 30) ขึ้นไป คุณจะใช้ข้อมูลสังเคราะห์ที่โปรแกรมจำลองสร้างขึ้นได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับความแตกต่างระหว่างการสร้างข้อมูลสังเคราะห์สำหรับ Wear OS 3 ขึ้นไปได้จากคำแนะนำต่อไปนี้

ใช้ข้อมูลสังเคราะห์ใน Wear OS 4 ขึ้นไป

หากทดสอบบนโปรแกรมจำลองที่ใช้ Wear OS 4 (API ระดับ 33) ขึ้นไป คุณจะใช้ข้อมูลจำลองที่โปรแกรมจำลองสร้างขึ้นเพื่อทดสอบแอปได้ การดำเนินการนี้มีการปรับปรุงหลายอย่างเกี่ยวกับวิธีสร้างข้อมูลจำลองใน Wear OS เวอร์ชันเก่า ดังนี้

ใช้แผงเซ็นเซอร์บริการข้อมูลสุขภาพ

การเปิดตัวฟีเจอร์ของ Android Studio Koala (Canary) มีบริการด้านสุขภาพในแผงเซ็นเซอร์ของ Wear OS แผงนี้สามารถใช้เพื่อจำลองอุปกรณ์ที่มีหรือไม่มีความสามารถของเซ็นเซอร์ที่เฉพาะเจาะจง ซึ่งเป็นสิ่งที่สำคัญในการทดสอบเมื่อสร้างแอปฟิตเนสใน Wear OS

นอกจากนี้ คุณยังใช้แผงเพื่อเปลี่ยนค่าของเมตริกและดูว่าแอปปรับเปลี่ยนอย่างไร

หากต้องการเปิดและใช้แผง ให้ทำดังนี้

  1. สร้างหรือเปิด Android Virtual Device (AVD) และเรียกใช้แอปในโปรแกรมจำลอง
  2. ในแผงโปรแกรมจำลอง ให้เลือก Wear Health Services เปิดแผงบริการสุขภาพของ Wear แผงบริการสุขภาพ Wear จะเปิดขึ้นพร้อมแสดงรายการเซ็นเซอร์ที่ใช้ได้บนอุปกรณ์ต่างๆ ที่ใช้ Android

หลังจากแผงเปิดขึ้นแล้ว คุณจะทำสิ่งต่อไปนี้ได้

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

สร้างข้อมูลสังเคราะห์ด้วยโปรแกรมจําลอง

นอกจากนี้ คุณยังเรียกใช้แอปได้โดยไม่ต้องใช้แผงเซ็นเซอร์และให้ผู้จําลองสร้างข้อมูลให้โดยอัตโนมัติ

ใช้การควบคุมในแอปเพื่อเริ่ม หยุดชั่วคราว และสิ้นสุดการสร้างข้อมูลสังเคราะห์

และโปรดทราบว่าโปรแกรมจำลองจะสร้างค่าข้อมูลเดียวกันสำหรับแต่ละแบบฝึกหัด

จำลองเหตุการณ์

คุณสามารถจำลองเหตุการณ์ต่างๆ ในโปรแกรมจำลอง เช่น AUTO_PAUSE_DETECTED คุณใช้คําสั่งต่อไปนี้เพื่อทริกเกอร์เหตุการณ์เหล่านั้นได้

adb shell am broadcast -a "whs.event-key" com.google.android.wearable.healthservices

เหตุการณ์สังเคราะห์

กิจกรรม

คีย์

ตรวจพบการหยุดชั่วคราวอัตโนมัติ

whs.AUTO_PAUSE_DETECTED

ตรวจพบการกลับมาทำงานอัตโนมัติ

whs.AUTO_RESUME_DETECTED

ตรวจพบการตกกระแทก

whs.FALL_OVER

ตรวจพบการนอนหลับ

whs.START_SLEEPING

ตรวจพบการหยุดทำงานชั่วคราว

whs.STOP_SLEEPING

ตรวจพบการตีกอล์ฟ

whs.GOLF_SHOT

เช่น คุณสามารถใช้คําสั่งต่อไปนี้เพื่อทริกเกอร์เหตุการณ์หยุดชั่วคราวอัตโนมัติ

​​adb shell am broadcast -a "whs.AUTO_PAUSE_DETECTED" com.google.android.wearable.healthservices

สําหรับเหตุการณ์การตีกอล์ฟ คุณควรระบุพารามิเตอร์เพิ่มเติมสําหรับประเภทวงสวิงในการตีกอล์ฟ ตามที่ระบุไว้ด้านล่าง

ประเภทการตีกอล์ฟ

พารามิเตอร์

ประเภทพัตต์แบบสวิง

พัตต์

ประเภทการสวิงบางส่วน

บางส่วน

ประเภทชิงช้าแบบเต็ม

สูงสุด

เพิ่มประเภทการตีกอล์ฟหลังจากระบุเหตุการณ์การตีกอล์ฟ

adb shell am broadcast -a "whs.GOLF_SHOT" --es golf_shot_swing_type \
  "golf-swing-type-parameter" com.google.android.wearable.healthservices

ตัวอย่างเช่น คำสั่งต่อไปนี้จะทริกเกอร์ช็อตกอล์ฟบางส่วน

adb shell am broadcast -a "whs.GOLF_SHOT" --es golf_shot_swing_type "partial" \
  com.google.android.wearable.healthservices

ใช้ข้อมูลสังเคราะห์ใน Wear OS 3

หากทดสอบบนโปรแกรมจำลองที่ใช้ Wear OS 3 คุณจะใช้ข้อมูลสังเคราะห์เพื่อทดสอบแอปได้ด้วย

เปิดใช้การสร้างข้อมูลสังเคราะห์

ทำตามขั้นตอนต่อไปนี้เพื่อเปิดใช้การสร้างข้อมูลสังเคราะห์ใน Wear OS 3

  1. เปิดใช้ตัวเลือกสำหรับนักพัฒนาแอป
  2. ออกคําสั่ง adb ต่อไปนี้เพื่อเปิดใช้โหมดข้อมูลสังเคราะห์

    adb shell am broadcast \
    -a "whs.USE_SYNTHETIC_PROVIDERS" \
    com.google.android.wearable.healthservices
    

เมื่อเปิดใช้การสร้างข้อมูลสังเคราะห์แล้ว ให้ออกคําสั่งที่อธิบายไว้ในหน้านี้เพื่อควบคุมลักษณะการทํางานของ "ผู้ใช้สังเคราะห์"

ปิดใช้การสร้างข้อมูลสังเคราะห์

หากต้องการเปลี่ยนกลับไปใช้เซ็นเซอร์จริง ให้เรียกใช้คำสั่งต่อไปนี้

adb shell am broadcast \
-a "whs.USE_SENSOR_PROVIDERS" \
com.google.android.wearable.healthservices

การออกกำลังกายแบบสังเคราะห์

บริการสุขภาพรองรับประเภทการออกกำลังกายต่อไปนี้

  • เดินเท้า: whs.synthetic.user.START_WALKING
  • การวิ่ง: whs.synthetic.user.START_RUNNING
  • การเดินเขา: whs.synthetic.user.START_HIKING
  • ว่ายน้ำ: whs.synthetic.user.START_SWIMMING
  • การวิ่งบนลู่วิ่ง: whs.synthetic.user.START_RUNNING_TREADMILL

แบบฝึกหัดจะสร้างข้อมูลสังเคราะห์ที่สมจริงสำหรับประเภทข้อมูลต่อไปนี้

  • อัตราการเต้นของหัวใจ
  • จำนวนก้าวต่อนาที
  • ตำแหน่ง GPS โดยใช้เส้นทางเริ่มต้นเส้นทางเดียว
  • ระยะเวลาของกิจกรรม
  • ระดับความสูงและชั้น

นอกจากนี้ ระบบยังสร้างสถานะต่อไปนี้ได้

  • สถานะการนอนหลับ - นอนหลับหรือตื่น
  • การตรวจจับการตกกระแทก

เริ่ม

หากต้องการเริ่มการจําลองการออกกําลังกาย ให้ออกอากาศที่เหมาะสมไปยัง com.google.android.wearable.healthservices

# start the "walking" synthetic exercise
$ adb shell am broadcast \
-a "whs.synthetic.user.START_WALKING" \
com.google.android.wearable.healthservices

กิจกรรมแต่ละรายการมีค่าที่กำหนดล่วงหน้าสำหรับเมตริกที่รองรับ ดังนี้

กิจกรรม อัตราการเต้นของหัวใจ ความเร็วเฉลี่ย การเปลี่ยนแปลงระดับความสูง ใช้ตำแหน่ง
เดิน 120 bpm 1.4 ม./วินาที 20.0 ม./นาที จริง
วิ่ง 170 bpm 2.3 ม./วินาที 20.0 ม./นาที จริง
การเดินเขา 150 bpm 1.3 ม./วินาที 20.0 ม./นาที จริง
ว่ายน้ำ 150 bpm 1.6 ม./วินาที 0.0 ม./นาที จริง
การวิ่งบนลู่วิ่ง 160 bpm 2.3 ม./วินาที 20.0 ม./นาที เท็จ

หยุด

หากต้องการหยุดกิจกรรมสังเคราะห์ ให้ใช้คําสั่งต่อไปนี้

adb shell am broadcast \
-a "whs.synthetic.user.STOP_EXERCISE" \
com.google.android.wearable.healthservices

กำหนดเอง

หากต้องการควบคุมเมตริกที่สร้างขึ้นอย่างละเอียดยิ่งขึ้น ให้เริ่มกิจกรรมการออกกําลังกายที่กําหนดเองโดยใช้สตริงการดําเนินการ whs.synthetic.user.START_EXERCISE ระบุ Flag ต่อไปนี้ร่วมกัน

  • --ei exercise_options_duration_secs <int>: ระยะเวลาของการออกกำลังกายเป็นวินาที ค่าเริ่มต้น: 0
  • --ei exercise_options_heart_rate <int>: อัตราการเต้นของหัวใจต่อนาที ปานกลาง: 70
  • --ef exercise_options_average_speed <float>: ความเร็วเฉลี่ยเป็นเมตรต่อวินาที และส่งผลต่อจำนวนก้าวต่อนาทีหรือจังหวะการก้าวด้วย ค่าเริ่มต้น: 0
  • --ez exercise_options_use_location <boolean>: ให้ส่งข้อมูลตำแหน่งระหว่างการออกกำลังกายโดยใช้เส้นทางเริ่มต้นหรือไม่ ค่าเริ่มต้น: false
  • --ef exercise_options_max_elevation_rate <float>: อัตราการเปลี่ยนระดับความสูงสูงสุดที่เป็นไปได้เป็นเมตรต่อนาที ค่าเริ่มต้น: 0

เช่น ตั้งค่าตัวเลือกแบบฝึกหัดด้วยวิธีต่อไปนี้

adb shell am broadcast \
-a "whs.synthetic.user.START_EXERCISE" \
--ei exercise_options_heart_rate 90 \
--ef exercise_options_average_speed 1.2 \
--ez exercise_options_use_location true \
com.google.android.wearable.healthservices

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

# enable synthetic mode and enable absolute elevation
$ adb shell am broadcast \
-a "whs.CONFIGURE_SYNTHETIC_DEVICE" \
--ez absolute_elevation true \
com.google.android.wearable.healthservices

# enable synthetic mode and disable absolute elevation
$ adb shell am broadcast \
-a "whs.CONFIGURE_SYNTHETIC_DEVICE" \
--ez absolute_elevation false \
com.google.android.wearable.healthservices

สถานะและเหตุการณ์อื่นๆ

สถานะสลีป

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

หากต้องการเข้าสู่สถานะ "สลีป" ให้เรียกใช้คําสั่งนี้

adb shell am broadcast \
-a "whs.synthetic.user.START_SLEEPING" \
com.google.android.wearable.healthservices

หากต้องการเข้าสู่สถานะตื่น ให้เรียกใช้คําสั่งนี้

adb shell am broadcast \
-a "whs.synthetic.user.STOP_SLEEPING" \
com.google.android.wearable.healthservices

การตรวจจับการตกกระแทก

หากต้องการจำลองการตก ให้เรียกใช้คำสั่งนี้

adb shell am broadcast \
-a "whs.synthetic.user.FALL_OVER" \
com.google.android.wearable.healthservices

บริการด้านสุขภาพอาจใช้เวลาถึง 1 นาทีในการส่งเหตุการณ์การล้ม