Biểu thức động trong Wear OS

Wear OS hỗ trợ cập nhật nội dung động cho thông tin xuất hiện trong các thẻ thông tinchức năng.

Khi sử dụng biểu thức động, bạn có thể liên kết dữ liệu xuất hiện trên một nền tảng của ứng dụng (chẳng hạn như thẻ thông tin hoặc chức năng) với một nguồn dữ liệu cụ thể. Ví dụ minh hoạ cho một nguồn dữ liệu như vậy là dữ liệu nhịp tim mà nền tảng có thể đọc. Sau khi bạn thiết lập liên kết này, hệ thống sẽ tự động cập nhật dữ liệu trong các thẻ thông tin và chức năng của bạn.

Tạo liên kết dữ liệu động

Để tạo liên kết dữ liệu động, hãy xác định một biến sử dụng loại dữ liệu động. Liên kết biến này với luồng dữ liệu mà bạn muốn dùng.

Ví dụ: bạn có thể tìm nạp các giá trị liên quan đến đồng hồ hệ thống và thông tin sức khoẻ, như trong đoạn mã sau.

Kotlin

val systemTime = DynamicInstant.platformTimeWithSecondsPrecision()
val steps: DynamicInt32 = PlatformHealthSources.dailySteps()

Java

DynamicInstant systemTime = DynamicInstant.platformTimeWithSecondsPrecision();
DynamicInt32 steps = PlatformHealthSources.dailySteps();

Bạn cũng có thể tạo giá trị động từ các biểu thức không đổi và thực hiện các phép tính số học đối với bất kỳ giá trị động nào, như trong đoạn mã sau:

Kotlin

val dynamicValue = DynamicInt32.constant(1).plus(2)

Java

DynamicInt32 dynamicValue = DynamicInt32.constant(1).plus(2)

Danh sách các loại dữ liệu động có thể có

Wear OS hỗ trợ các loại dữ liệu động sau đây:

Ngoài ra, bạn có thể chuyển đổi loại dữ liệu bằng các chức năng tích hợp sẵn, chẳng hạn như các chức năng sau:

  • DynamicInt32 hỗ trợ chuyển đổi sang DynamicString bằng cách sử dụng format().
  • DynamicDuration cho phép bạn trích xuất các phần cụ thể, chẳng hạn như phần giây của thời lượng, dưới dạng các đối tượng DynamicInt32.

Sử dụng một số lượng hạn chế các biểu thức động trên mỗi màn hình

Hệ thống có đưa ra giới hạn về số lượng biểu thức động mà hệ thống có thể xử lý đồng thời trên một màn hình cụ thể. Hệ thống sẽ chuyển đổi mọi biểu thức động khác sang giá trị tĩnh.

Wear OS cũng coi biểu thức không đổi là biểu thức động. Ví dụ: đoạn mã sau đây chứa 4 biểu thức động:

  1. Toán tử plus().
  2. Toán tử animate().
  3. Biểu thức constant(1).
  4. Biểu thức constant(2) ngụ ý giá trị 2 trong biểu thức động plus().
DynamicInt32.constant(1).plus(2).animate()