Sử dụng dữ liệu tổng hợp được tạo từ Dịch vụ sức khoẻ trên Wear OS để kiểm thử ứng dụng như thể một bài tập thể dục đang thực sự diễn ra.
Nếu đang kiểm thử trên trình mô phỏng chạy Wear OS 3 (API cấp 30) trở lên, bạn có thể sử dụng dữ liệu tổng hợp do trình mô phỏng tạo. Hãy tham khảo hướng dẫn sau đây để tìm hiểu thêm về sự khác biệt giữa việc tạo dữ liệu tổng hợp cho Wear OS 3 trở lên.
Sử dụng dữ liệu tổng hợp trên Wear OS 4 trở lên
Nếu đang kiểm thử trên trình mô phỏng chạy Wear OS 4 (API cấp 33) trở lên, bạn có thể sử dụng dữ liệu tổng hợp do trình mô phỏng tạo ra để kiểm thử ứng dụng. Điều này mang lại một số điểm cải tiến so với cách tạo dữ liệu tổng hợp trên các phiên bản Wear OS cũ:
Tính năng tạo dữ liệu tổng hợp trên Wear OS 4 trở lên được tích hợp với vòng đời API Dịch vụ sức khoẻ. Điều này có nghĩa là bạn không cần các lệnh adb để bắt đầu hoặc dừng bài tập. Thay vào đó, bạn có thể bắt đầu hoặc dừng bài tập thể dục trong ứng dụng như người dùng.
Mở rộng khả năng hỗ trợ cho các sự kiện tập thể dục: Bạn có thể mô phỏng việc nhận sự kiện tự động tạm dừng và tiếp tục, sự kiện ngã, phát hiện giấc ngủ và phát hiện cú đánh gôn.
Sử dụng Bảng điều khiển cảm biến của Dịch vụ sức khoẻ
Bản phát hành tính năng Koala của Android Studio (Canary) bao gồm Dịch vụ sức khoẻ trên bảng điều khiển cảm biến Wear OS. Bạn có thể dùng bảng điều khiển này để mô phỏng một thiết bị có hoặc không có các chức năng cảm biến cụ thể. Đây là yếu tố quan trọng cần kiểm thử khi xây dựng ứng dụng thể dục trên Wear OS.
Bạn cũng có thể sử dụng bảng điều khiển để thay đổi giá trị của các chỉ số và quan sát cách ứng dụng điều chỉnh.
Để mở và sử dụng bảng điều khiển, hãy làm như sau:
- Tạo hoặc mở một Thiết bị Android ảo (AVD) và chạy ứng dụng trên trình mô phỏng.
- Trong bảng điều khiển của trình mô phỏng, hãy chọn Wear Health Services (Dịch vụ sức khoẻ Wear). Bảng điều khiển Wear Health Services (Dịch vụ sức khoẻ Wear) sẽ mở ra, hiển thị danh sách các cảm biến có trên nhiều thiết bị chạy Android.
Sau khi bảng điều khiển mở ra, bạn có thể làm như sau:
- Chuyển đổi giữa Chức năng tiêu chuẩn và Tất cả chức năng (mặc định) để chọn nhóm chức năng được bật trong bài tập tiếp theo. Bạn có thể bật hoặc tắt từng tính năng bằng cách chọn hộp đánh dấu. Chọn Apply (Áp dụng) để gửi danh sách tính năng hiện tại đến thiết bị được mô phỏng, rồi chọn Reset (Đặt lại) để khôi phục danh sách tính năng về các giá trị bật/tắt mặc định.
- Kích hoạt các sự kiện người dùng khác nhau sau khi bạn chọn nút thả xuống Kích hoạt sự kiện. Tại đây, bạn có thể Kích hoạt tính năng tự động tạm dừng/tiếp tục các hoạt động thể dục, Kích hoạt sự kiện ngủ của người dùng và Kích hoạt cú đánh gôn mà người dùng thực hiện trên sân gôn hoặc sân gôn mini.
- Ghi đè các giá trị cảm biến sau khi bạn bắt đầu tập thể dục trong một ứng dụng đã cài đặt trên trình mô phỏng. Sau khi bạn nhập giá trị mới cho các chỉ số tập thể dục khác nhau, hãy chọn Apply (Áp dụng) để đồng bộ hoá các giá trị này với trình mô phỏng. Điều này hữu ích cho việc kiểm thử cách ứng dụng của bạn xử lý các điều kiện tập thể dục khác nhau và xu hướng thể dục của người dùng.
Tạo dữ liệu tổng hợp bằng trình mô phỏng
Bạn cũng có thể chạy ứng dụng mà không cần bảng cảm biến và để trình mô phỏng tự động tạo dữ liệu.
Sử dụng các chế độ điều khiển trong ứng dụng để bắt đầu, tạm dừng và kết thúc quá trình tạo dữ liệu tổng hợp.
Ngoài ra, xin lưu ý rằng trình mô phỏng tạo ra cùng một giá trị dữ liệu cho mỗi bài tập.
Mô phỏng sự kiện
Bạn có thể mô phỏng nhiều sự kiện trong trình mô phỏng, chẳng hạn như AUTO_PAUSE_DETECTED
.
Bạn có thể dùng lệnh sau để kích hoạt các sự kiện đó:
adb shell am broadcast -a "whs.event-key" com.google.android.wearable.healthservices
Sự kiện tổng hợp
Sự kiện |
Khoá |
---|---|
Phát hiện chế độ Tự động tạm dừng |
|
Phát hiện tính năng Tự động tiếp tục |
|
Phát hiện bị ngã |
|
Đã phát hiện giấc ngủ |
|
Phát hiện trạng thái ngừng ngủ |
|
Phát hiện cú đánh golf |
|
Ví dụ: bạn có thể sử dụng lệnh sau để kích hoạt sự kiện tự động tạm dừng:
adb shell am broadcast -a "whs.AUTO_PAUSE_DETECTED" com.google.android.wearable.healthservices
Đối với sự kiện cú đánh gôn, bạn nên chỉ định các thông số bổ sung cho loại cú đánh gôn, như được nêu dưới đây:
Loại cú đánh golf |
Thông số |
---|---|
Loại cú đánh bóng vào lỗ |
gạt bóng |
Loại Swing Partial |
một phần |
Loại Swing Full |
tối đa |
Thêm loại cú đánh golf sau khi chỉ định sự kiện cú đánh golf:
adb shell am broadcast -a "whs.GOLF_SHOT" --es golf_shot_swing_type \ "golf-swing-type-parameter" com.google.android.wearable.healthservices
Ví dụ: lệnh sau đây kích hoạt một cú đánh golf một phần:
adb shell am broadcast -a "whs.GOLF_SHOT" --es golf_shot_swing_type "partial" \ com.google.android.wearable.healthservices
Sử dụng dữ liệu tổng hợp trên Wear OS 3
Nếu đang kiểm thử trên một trình mô phỏng chạy Wear OS 3, bạn cũng có thể sử dụng dữ liệu tổng hợp để kiểm thử ứng dụng.
Bật tính năng tạo dữ liệu tổng hợp
Hoàn tất các bước sau để bật tính năng tạo dữ liệu tổng hợp trên Wear OS 3.
- Bật tuỳ chọn cho nhà phát triển.
Phát lệnh
adb
sau để bật chế độ tổng hợp:adb shell am broadcast \ -a "whs.USE_SYNTHETIC_PROVIDERS" \ com.google.android.wearable.healthservices
Sau khi bật tính năng tạo dữ liệu tổng hợp, hãy phát các lệnh được mô tả trên trang này để kiểm soát hành vi của "người dùng dữ liệu tổng hợp".
Tắt tính năng tạo dữ liệu tổng hợp
Để quay lại sử dụng các cảm biến thực, hãy chạy lệnh sau:
adb shell am broadcast \
-a "whs.USE_SENSOR_PROVIDERS" \
com.google.android.wearable.healthservices
Bài tập tổng hợp
Dịch vụ sức khoẻ hỗ trợ các loại bài tập thể dục sau:
- Đi bộ:
whs.synthetic.user.START_WALKING
- Chạy:
whs.synthetic.user.START_RUNNING
- Đi bộ đường dài:
whs.synthetic.user.START_HIKING
- Bơi:
whs.synthetic.user.START_SWIMMING
- Chạy trên máy chạy bộ:
whs.synthetic.user.START_RUNNING_TREADMILL
Bài tập sẽ tạo dữ liệu tổng hợp thực tế cho các loại dữ liệu sau:
- Nhịp tim
- Số bước/phút
- Vị trí GPS sử dụng một tuyến đường mặc định
- Thời lượng của hoạt động
- Độ cao và số tầng
Ngoài ra, các trạng thái sau cũng được tạo:
- Trạng thái ngủ – ngủ hoặc thức
- Phát hiện tình trạng bị ngã
Bắt đầu
Để bắt đầu mô phỏng một bài tập thể dục, hãy phát đi thông báo thích hợp cho 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
Mỗi hoạt động đều có các giá trị đặt trước cho các chỉ số được hỗ trợ:
Hoạt động | Nhịp tim | Tốc độ trung bình | Thay đổi độ cao | Dùng thông tin vị trí |
---|---|---|---|---|
Đi bộ | 120 bpm | 1.4 m/giây | 20.0 m/phút | đúng |
Đang chạy | 170 bpm | 2.3 m/giây | 20.0 m/phút | đúng |
Đi bộ đường dài | 150 bpm | 1.3 m/giây | 20.0 m/phút | đúng |
Bơi | 150 bpm | 1.6 m/giây | 0.0 m/phút | đúng |
Chạy trên máy chạy bộ | 160 nhịp/phút | 2.3 m/giây | 20.0 m/phút | false (sai) |
Dừng
Để dừng hoạt động tổng hợp dữ liệu, hãy sử dụng lệnh sau:
adb shell am broadcast \
-a "whs.synthetic.user.STOP_EXERCISE" \
com.google.android.wearable.healthservices
Tuỳ chỉnh
Để kiểm soát chính xác hơn những chỉ số được tạo, hãy bắt đầu một hoạt động tuỳ chỉnh về bài tập thể dục bằng chuỗi hành động whs.synthetic.user.START_EXERCISE
.
Cung cấp bất kỳ tổ hợp cờ nào sau đây:
--ei exercise_options_duration_secs <int>
: thời lượng của bài tập tính bằng giây. Mặc định:0
.--ei exercise_options_heart_rate <int>
: nhịp tim tính theo số nhịp/phút. Trung bình:70
.--ef exercise_options_average_speed <float>
: tốc độ trung bình tính theo mét/giây. Đồng thời, cũng ảnh hưởng đến số bước/phút hoặc tần suất. Mặc định:0
.--ez exercise_options_use_location <boolean>
: có phát đi dữ liệu vị trí trong quá trình tập thể dục hay không thông qua tuyến đường mặc định. Mặc định:false
.--ef exercise_options_max_elevation_rate <float>
: tốc độ thay đổi độ cao tối đa có thể tính bằng mét/phút. Mặc định:0
.
Ví dụ: đặt các tuỳ chọn bài tập thể dục theo cách sau:
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
Bạn cũng có thể thay đổi loại dữ liệu có sẵn, cho dù phần cứng thực hay phần cứng mô phỏng có hỗ trợ một loại dữ liệu cụ thể hay không. Ví dụ: bạn có thể bật hoặc tắt độ cao tuyệt đối, như minh hoạ trong đoạn mã sau:
# 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
Các trạng thái và sự kiện khác
Trạng thái ngủ
Bạn cũng có thể kích hoạt trạng thái ngủ cho người dùng dữ liệu tổng hợp. 2 trạng thái được hỗ trợ là ngủ và thức.
Để chuyển sang trạng thái ngủ, hãy chạy lệnh sau:
adb shell am broadcast \
-a "whs.synthetic.user.START_SLEEPING" \
com.google.android.wearable.healthservices
Để chuyển sang trạng thái thức, hãy chạy lệnh sau:
adb shell am broadcast \
-a "whs.synthetic.user.STOP_SLEEPING" \
com.google.android.wearable.healthservices
Phát hiện tình trạng bị ngã
Để mô phỏng tình trạng bị ngã, hãy chạy lệnh sau:
adb shell am broadcast \
-a "whs.synthetic.user.FALL_OVER" \
com.google.android.wearable.healthservices
Có thể mất đến một phút để dịch vụ sức khoẻ thực hiện sự kiện ngã.
Đề xuất cho bạn
- Lưu ý: văn bản có đường liên kết sẽ hiện khi JavaScript tắt
- SourceType
- ArithmeticExpression
- ListConfiguration