API lớp dữ liệu Wear OS bao gồm một số loại ứng dụng khác nhau, hữu ích cho nhiều loại dữ liệu và trong các điều kiện kết nối khác nhau.
Trang này giới thiệu từng loại ứng dụng và có một bảng so sánh các chức năng của từng ứng dụng. Dựa vào thông tin này, bạn có thể chọn nhóm loại ứng dụng khách phù hợp nhất với ứng dụng của mình.
Trường hợp nên sử dụng API Lớp dữ liệu
Sử dụng API Lớp dữ liệu khi hoạt động tương tác chỉ diễn ra giữa đồng hồ cục bộ và điện thoại cục bộ. Để xem ví dụ chi tiết, hãy xem phần Các trường hợp sử dụng phổ biến của Lớp dữ liệu.
Ứng dụng dữ liệu
Đối tượng DataClient cho phép bạn đọc hoặc ghi vào DataItem hoặc Asset:
Mỗi
DataItemlà một đơn vị thông tin được truyền phát và đồng bộ hoá trên tất cả thiết bị ở gần mà người dùng sở hữu.DataItemđược lưu trữ liên tục và thiết bị của bạn có thể đọc nội dung của mục dữ liệu đó cho đến khi mục dữ liệu đó bị xoá.Assetdành cho tải trọng dữ liệu lớn hơn, chẳng hạn như hình ảnh hoặc tệp nội dung nghe nhìn.
Ứng dụng nhắn tin
Đối tượng MessageClient có thể gửi thông báo và phù hợp với các lệnh gọi quy trình từ xa (RPC), chẳng hạn như dùng thiết bị Wear OS để điều khiển phiên bản ứng dụng được cài đặt trên thiết bị cầm tay.
Tin nhắn phù hợp với các yêu cầu một chiều sử dụng sendMessage() hoặc mô hình giao tiếp yêu cầu và phản hồi sử dụng sendRequest(). Không giống như ứng dụng dữ liệu, ứng dụng thông báo cần các nút được kết nối với mạng để gửi thông báo.
Phương thức sendMessage() là cách tốt nhất để phân phối đến nút từ xa và không chứa bất kỳ cơ chế thử lại tích hợp sẵn nào. Nếu thiết bị mục tiêu ngắt kết nối trước khi quá trình chuyển mạng bắt đầu, thì phương thức này sẽ trả về TARGET_NODE_NOT_CONNECTED.
Ứng dụng kênh
Đối tượng ChannelClient cung cấp hoạt động giao tiếp theo hướng luồng giữa các thiết bị. Kênh là một đường ống giao tiếp hai chiều giữa hai nút,
hữu ích cho các trường hợp sử dụng như sau:
- Chuyển các tệp dữ liệu giữa hai hoặc nhiều thiết bị thông minh được kết nối khi không có Internet.
ChannelClientlưu dung lượng ổ đĩa quaDataClient, việc này sẽ tạo bản sao của các thành phần trên thiết bị cục bộ trước khi đồng bộ hoá với các thiết bị thông minh. - Gửi một tệp có kích thước quá lớn nên không thể gửi bằng
MessageClient. - Chuyển dữ liệu phát trực tuyến, chẳng hạn như dữ liệu thoại từ micrô.
Sau khi mở một kênh, bạn có thể gửi và nhận dữ liệu trong một luồng byte liên tục, thay vì các đơn vị DataItem riêng biệt mà ứng dụng dữ liệu yêu cầu.
Bạn có trách nhiệm quản lý luồng dữ liệu và đảm bảo tính nhất quán của dữ liệu. Ứng dụng khách kênh không cung cấp cùng mức đồng bộ hoá dữ liệu tự động như ứng dụng khách dữ liệu.
So sánh ứng dụng
Bảng sau đây so sánh các chức năng của từng ứng dụng:
| Loại ứng dụng khách | Khả năng lưu trữ cố định dữ liệu | Hỗ trợ dữ liệu lớn hơn 100 KB? | Mạng cần dùng | Hoạt động ngoại tuyến? |
|---|---|---|---|---|
| Ứng dụng dữ liệu | Dữ liệu được lưu giữ vô thời hạn | Có (sử dụng đối tượng Asset) |
Nên ưu tiên Bluetooth. Dữ liệu được sao lưu lên đám mây; nếu có Bluetooth, quá trình sao lưu này sẽ được thực hiện không đồng bộ | Có, cho cả đọc và ghi |
| Ứng dụng nhắn tin | Không lưu trữ và không thử lại | Không | Ưu tiên Bluetooth, nhưng có thể dùng Wi-Fi nếu đó là loại kết nối duy nhất hiện có | Không |
| Ứng dụng kênh | Không có tính bền vững (hướng kết nối) | Có | Ưu tiên Bluetooth, nhưng có thể dùng Wi-Fi nếu đó là loại kết nối duy nhất hiện có | Không |
Để biết thêm thông tin về cách làm việc với API Lớp dữ liệu, hãy xem hướng dẫn Đồng bộ hoá dữ liệu. Để biết những điều cần cân nhắc về nguồn điện khi sử dụng API Lớp dữ liệu, hãy xem hướng dẫn Tiết kiệm pin.