Phiên hoạt động là một cách giúp người dùng nhanh chóng và dễ dàng xem danh sách tất cả các hoạt động chính mà họ đã thực hiện. Chúng xuất hiện trên trang nhật ký của ứng dụng Google Fit. Ví dụ: phiên tập thở, đi bộ, chạy bộ hoặc ngủ một đêm là ví dụ về một phiên.
Phiên nhóm các tập dữ liệu trong một khoảng thời gian cụ thể, được thu thập trong một hoạt động. Ví dụ: nếu người dùng theo dõi thời điểm họ bắt đầu và kết thúc bài chạy 3 km, thì một phiên hoạt động có thể được tạo và tất cả dữ liệu về hoạt động thể dục trong khoảng thời gian đó (như số bước, tốc độ, quãng đường) sẽ được liên kết với phiên hoạt động đó.
Bản thân phiên không chứa thông tin chi tiết về hoạt động. Thông tin này nằm trong tập dữ liệu. Phiên hoạt động có các thuộc tính sau:
- Tên mang tính mô tả, thân thiện (ví dụ: "chạy buổi sáng")
- Một mô tả
- Giá trị nhận dạng duy nhất
- Loại hoạt động mà Bard ghi lại (ví dụ: chạy bộ)
Lợi ích của việc sử dụng phiên hoạt động
- Hữu ích cho người dùng: Phiên hoạt động giúp bạn sắp xếp dữ liệu hoạt động và bài tập thể dục theo cách có ý nghĩa cho người dùng. Họ có thể xem tất cả các hoạt động của mình trong ngày trên trang Nhật ký trong ứng dụng Google Fit.
- Trải nghiệm người dùng nhất quán: Nếu ứng dụng hoặc thiết bị đồng hành của bạn cho phép theo dõi hoạt động (nơi người dùng có thể bắt đầu và dừng một hoạt động), thì việc có các phiên cho các bài tập thể dục này sẽ cho phép người dùng xem hoạt động của họ trên cả hai ứng dụng.
- Dữ liệu đầy đủ hơn: Google Fit cũng hợp nhất dữ liệu từ nhiều nguồn để bổ sung và làm phong phú thông tin về phiên hoạt động của bạn. Điều này giúp người dùng hiểu rõ hơn về hoạt động của họ.
- Tận dụng nền tảng Google Fit: Nếu người dùng không theo dõi hoạt động của họ hoặc ứng dụng của bạn không hỗ trợ tính năng theo dõi, thì bạn vẫn có thể đọc các phiên hoạt động trong Google Fit. Bạn có thể truy vấn dữ liệu chi tiết hoặc dữ liệu tổng hợp từ kho lưu trữ thể dục và tìm các phiên có sẵn mà không cần triển khai giản đồ và bộ nhớ của riêng mình.
- Tăng mức độ tương tác của người dùng: Bạn có thể cho người dùng thấy các phiên hoạt động có sẵn và ứng dụng đã tạo các phiên đó. Việc tương tác với các ứng dụng thể dục khác theo cách này có thể làm tăng mức độ tương tác của người dùng.
Nhận sự cho phép của người dùng cho các phiên
Nếu bạn muốn đọc hoặc ghi phiên, thì ứng dụng phải có được sự cho phép của người dùng. Quyền truy cập vào phiên hoạt động sẽ sử dụng cùng phạm vi uỷ quyền như các loại dữ liệu mà bạn nên yêu cầu như sau:
Android
Chỉ định loại phiên mà ứng dụng của bạn cần truy cập bằng các phương thức thích hợp từ FitnessOptions
.
Ví dụ: để đọc các phiên liên quan đến hoạt động chạy bộ, bạn có thể chọn:
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()
Ví dụ này chỉ định rằng ứng dụng của bạn muốn truy cập vào siêu dữ liệu của phiên hoạt động, đồng thời chỉ định loại dữ liệu mà ứng dụng muốn đọc trong các phiên đó. Ví dụ này sử dụng loại dữ liệu nhịp tim, tốc độ và vị trí.
Kiến trúc chuyển trạng thái đại diện (REST)
Yêu cầu các phạm vi như sau:
- Số phiên có loại hoạt động giấc ngủ:
https://www.googleapis.com/auth/fitness.sleep.read
https://www.googleapis.com/auth/fitness.sleep.write
- Tất cả các phiên khác:
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
Sử dụng phiên
Android
Bạn có thể sử dụng API phiên để:
- Tạo phiên theo thời gian thực
- Chèn phiên tập luyện vào cửa hàng thể dục
- Chèn phân đoạn hoạt động để hỗ trợ các lần tạm dừng trong bài tập thể dục
- Đọc các phiên và tập dữ liệu liên quan đến các phiên đó
- Chạy một ứng dụng khác để hiện thông tin về phiên mà ứng dụng đó đã tạo
- Nhận ý định khi một ứng dụng khác bắt đầu phiên
Kiến trúc chuyển trạng thái đại diện (REST)
Bạn có thể sử dụng API phiên để:
- Tạo phiên theo thời gian thực
- Chèn phiên tập luyện vào cửa hàng thể dục
- Chèn phân đoạn hoạt động để hỗ trợ các lần tạm dừng trong bài tập thể dục
- Đọc các phiên và tập dữ liệu liên quan đến các phiên đó
Cách tập dữ liệu và phân đoạn tương tác với phiên
Trong Google Fit:
- Một tập dữ liệu đại diện cho một tập dữ liệu của một nguồn dữ liệu cụ thể trong một khoảng thời gian cụ thể. Bạn có thể tự chèn tập dữ liệu. Nhưng nếu bạn đang tạo một phiên, thì việc tạo phiên và tập dữ liệu của phiên đó cùng nhau có thể sẽ dễ dàng hơn.
- Một phân đoạn sẽ nhóm các tập dữ liệu trong một phiên theo hoạt động chính xác mà người dùng đã thực hiện trong phiên đó. Ví dụ: nếu người dùng theo dõi một lần chạy bộ trong 30 phút (phiên hoạt động) nhưng đã đi bộ một chút trong khoảng thời gian này, thì kết quả có thể được chia thành các phân đoạn. Sẽ có một đoạn cho lượt chạy, sau đó là đoạn nghỉ khi đi bộ, sau đó là đoạn chạy lại.
![](https://developers-dot-devsite-v2-prod.appspot.com/static/fit/images/timeline.png?authuser=5&hl=vi)
Hình 1 cho thấy một khoảng thời gian trong cửa hàng thể dục, trong đó các ứng dụng A, B và C đã chèn một số tập dữ liệu và phiên hoạt động:
- Ứng dụng A đã chèn các tập dữ liệu A1 và A2 cùng với Phiên 1 và A3 một cách độc lập với bất kỳ phiên nào.
- Ứng dụng B đã chèn các tập dữ liệu B1 và B2 cùng với Phiên 2.
- Ứng dụng C đã chèn tập dữ liệu C1 một cách độc lập với mọi phiên hoạt động.
Khi đọc dữ liệu phiên hoạt động từ kho lưu trữ nội dung thể dục, tất cả dữ liệu về hoạt động thể dục nằm trong khoảng thời gian của một phiên hoạt động sẽ tự động được liên kết với phiên hoạt động đó, ngay cả khi bạn chèn dữ liệu sau khi tạo phiên hoặc tạo một phiên sau khi dữ liệu được theo dõi thụ động. Ví dụ: truy vấn cho dữ liệu thể dục trong Phiên 1 sẽ trả về:
- Tập dữ liệu A1
- Tập dữ liệu A2
- Phần của tập dữ liệu A3 giữa t1 và t2
- Phần của tập dữ liệu C1 giữa t1 và t2
Bạn có thể cho biết ứng dụng nào đã chèn vào mỗi phiên hoạt động và tập dữ liệu.
Đang tạo phiên
Bạn có thể tạo phiên hoạt động theo một số cách:
- Ứng dụng của bạn có thể chủ động tạo một phiên trong
- theo thời gian thực khi người dùng chủ động theo dõi một hoạt động trên một thiết bị (chỉ dành cho Android), hoặc
- bằng cách chèn thủ công.
- Khi người dùng tự thêm một bài tập thể dục hoặc hoạt động vào ứng dụng Google Fit.
Thời điểm tạo phiên
Bạn có đang thêm dữ liệu giấc ngủ không?
- Có – Tạo một phiên và tự chèn phiên này vào cửa hàng thể dục. Ví dụ: chèn phiên giấc ngủ. Nguyên nhân là do người dùng có ứng dụng hoặc thiết bị theo dõi giấc ngủ sẽ không tương tác với thiết bị để bắt đầu và dừng hoạt động giấc ngủ của họ (hoạt động này được theo dõi một cách thụ động).
- Không – Ứng dụng của bạn có cho phép người dùng bắt đầu và dừng các hoạt động không?
- Không – Không tạo phiên. Chỉ thêm tập dữ liệu từ ứng dụng của bạn.
- Có – Với API Android, hãy tạo một phiên theo thời gian thực nếu người dùng theo dõi hoạt động của họ, hoặc theo cách thủ công. Với API REST, hãy tạo một phiên và chèn phiên này theo cách thủ công vào cửa hàng thể dục.
- Ứng dụng của bạn có thể phát hiện thời điểm người dùng thực hiện nhiều hoạt động ở cấp độ chi tiết hơn (ví dụ: đi bộ và chạy bộ) không?
- Có – Thêm phân khúc.
- Không – Chỉ thêm tập dữ liệu. Tạm thời bỏ qua các phân đoạn và để Google Fit tự động tạo các phân đoạn này.
Phiên đọc
Ứng dụng của bạn có thể đọc các phiên hoạt động theo một số cách:
- Tìm một phiên cụ thể do
- tạo/chèn
- Tên hoặc
- Mã nhận dạng
- Tìm tất cả các phiên hoạt động đã tạo/chèn, theo khoảng thời gian
- Tìm tất cả các phiên có sẵn do tất cả ứng dụng (bao gồm cả Google Fit) tạo ra theo khoảng thời gian
Tìm hiểu những nguồn đã tạo ra phiên
Bạn có thể cho người dùng biết ứng dụng hoặc thiết bị nào đã tạo từng phiên hoạt động của họ. Mỗi phiên hoạt động có một nguồn dữ liệu liên kết. Nguồn này có thông tin về ứng dụng hoặc thiết bị đã thu thập hoặc biến đổi dữ liệu đó.
Android
Hiện tại, bạn chỉ có thể lấy tên gói của một phiên do ứng dụng Android viết. Để lấy tên gói của ứng dụng đã tạo phiên, hãy sử dụng phương thức getAppPackageName
. Bạn có thể dùng thông tin này trong ứng dụng của mình để cho người dùng biết những ứng dụng khác đã chèn phiên tập thể dục. Bạn có thể hiển thị biểu tượng cho từng ứng dụng trong số này để giúp người dùng xác định được các ứng dụng đó.
Bạn cũng có thể kích hoạt một ý định để chạy các ứng dụng khác nhằm hiện thông tin chi tiết về các phiên mà các ứng dụng đó đã tạo. Các ứng dụng khác cũng có thể kích hoạt ý định để chạy ứng dụng của bạn.
Tìm hiểu thêm về cách tìm nguồn đã tạo phiên hoạt động.
Kiến trúc chuyển trạng thái đại diện (REST)
Để lấy tên gói của ứng dụng Android đã tạo phiên, hãy dùng thuộc tính session.application
. Đối với các phiên được tạo bằng API REST, hãy dùng thuộc tính session.name
. Bạn có thể sử dụng thông tin này trong ứng dụng của mình để cho người dùng biết ứng dụng nào khác đã chèn phiên tập thể dục. Bạn có thể hiển thị biểu tượng cho từng ứng dụng này để giúp người dùng dễ dàng nhận ra.
Tìm hiểu thêm về cách tìm nguồn đã tạo phiên hoạt động.