Mở rộng ứng dụng đa phương tiện sang Wear OS

Wear OS là một nền tảng tuyệt vời để người dùng Android tương tác với nhiều nội dung âm thanh (chẳng hạn như sách nói, nhạc, podcast và đài) khi đang di chuyển. Wear OS by Google cho phép bạn viết các ứng dụng cho nhiều danh mục, bao gồm cả nội dung âm thanh , giúp người dùng luôn kết nối, khoẻ mạnh và thể hiện bản thân.

Nếu đã phát triển cho Android, thì bạn có thể đã quen thuộc với các tính năng như ứng dụng và thông báo. Bạn có thể vận dụng kiến thức về Phát triển Android hiện đại khi phát triển ứng dụng cho Wear OS.

Nguyên tắc phát triển Wear OS

Wear OS hoạt động dựa trên Android, nên nhiều phương pháp hay nhất dành cho Android cũng áp dụng cho Wear OS. Để tối ưu hoá thời gian phát triển, hãy xem các nguyên tắc này trước khi bắt đầu xây dựng ứng dụng Wear OS.

Tạo và chạy ứng dụng trên Wear OS

Cách tốt nhất để bắt đầu là tự mình xem một ứng dụng Wear OS! Bạn có thể tạo ứng dụng đầu tiên cho Wear OS bằng cách sử dụng mẫu trong Android Studio. Ứng dụng này trình bày một số cách xem nhanh thông tin trên thiết bị Wear OS và giới thiệu một số phương pháp hay nhất giúp phát triển ứng dụng trên nền tảng này.

Để biết hướng dẫn từng bước, hãy xem bài viết Tạo và chạy ứng dụng trên Wear OS.

Phát triển Wear OS so với phát triển thiết bị di động

Có một số điểm khác biệt giữa cách bạn thiết kế ứng dụng dành cho thiết bị di động và cách bạn thiết kế ứng dụng dành cho thiết bị Wear OS. Để tìm hiểu điểm khác biệt giữa tính năng cụ thể, API hoặc phương pháp hay nhất nhằm phát triển ứng dụng cho thiết bị Wear OS so với quá trình phát triển thiết bị di động Android, hãy xem bảng tính năng.

Các trường hợp sử dụng phổ biến đối với ứng dụng đa phương tiện trên Wear OS

Xây dựng ứng dụng đa phương tiện trên Wear OS để cho phép người dùng phát trực tuyến và phát nội dung đã tải xuống từ đồng hồ. Để mang lại trải nghiệm tốt nhất cho người dùng, hãy cân nhắc việc triển khai các trường hợp sử dụng nội dung đa phương tiện sau đây. Các trường hợp này hoạt động đặc biệt hiệu quả trên thiết bị Wear OS.

Phát nội dung đã tải xuống

Người dùng có thể nghe nội dung khi đang tập thể dục mà không cần kết nối mạng. Mặc dù thiết bị Wear OS thường hỗ trợ Bluetooth và Wi-Fi, nhưng thiết bị này có thể không hỗ trợ LTE. Thiết kế cho các kết nối không ổn định và các trường hợp sử dụng ngoại tuyến, chẳng hạn như người dùng có thể để thiết bị di động ở nhà khi tập thể dục và khi đi làm. Để biết thêm thông tin, hãy xem bài viết Xử lý nội dung đã tải xuống.

Phát trực tuyến trên mọi mạng hiện có

Người dùng có thể nghe nhạc, podcast hoặc đài bằng cách phát trực tuyến từ đồng hồ, nhưng việc phát trực tuyến có thể làm hao pin đồng hồ. Hiển thị tệp đã tải xuống được sử dụng gần đây trên danh sách duyệt qua để ưu tiên nội dung tải xuống khi người dùng chọn nghe trên đồng hồ. Hãy cân nhắc việc thêm một nút đưa họ đến danh sách đầy đủ các tệp tải xuống như trong hình sau.

Danh sách thư viện âm thanh bao gồm "Nội dung tải xuống"

Hình 1. Danh sách thư viện âm thanh bao gồm "Tệp tải xuống"

Danh sách các thư viện âm thanh, bao gồm cả danh sách phát và sách nói

Hình 2. Danh sách thư viện âm thanh, bao gồm danh sách phát và sách nói

Xây dựng bằng Compose cho Wear OS

Compose cho Wear OS là một phần của Android Jetpack, và cũng giống như các thư viện Wear Jetpack khác mà bạn sử dụng, bộ công cụ này giúp bạn viết mã tốt hơn và nhanh hơn. Đây là phương pháp mà Google đề xuất để xây dựng giao diện người dùng cho các ứng dụng Wear OS.

Nhiều nguyên tắc phát triển cho Jetpack Compose trên thiết bị di động sẽ áp dụng cho Compose cho Wear OS. Tuy nhiên, có một số điểm khác biệt chính. Khi xây dựng bằng Compose cho Wear OS, bạn cần phải thiết kế các ứng dụng cho phép người dùng truy cập thuận tiện và nhanh chóng vào nội dung đa phương tiện trên đồng hồ của họ. Đồng hồ là một nền tảng độc đáo mà sự dễ dàng và tốc độ tương tác là ưu tiên hàng đầu, vì người dùng dành ít thời gian tương tác với đồng hồ hơn so với điện thoại hoặc máy tính bảng.

Để biết thêm thông tin về những ưu điểm chung của khung giao diện người dùng khai báo, hãy xem bài viết Tại sao nên dùng Compose. Nếu bạn chưa hiểu rõ về cách sử dụng bộ công cụ Jetpack Compose, hãy xem Lộ trình tìm hiểu Compose. Để tìm hiểu thêm về Compose cho Wear OS, hãy xem Lộ trình tìm hiểu về Compose cho Wear OSkho lưu trữ mẫu Wear OS trên GitHub.

Bộ công cụ đa phương tiện Wear OS

Bộ công cụ đa phương tiện Wear OS là một tập hợp các thư viện giúp đẩy nhanh quá trình phát triển các ứng dụng đa phương tiện chất lượng cao cho Wear OS. Bộ công cụ này là một phần của dự án Horologist. Horologist là một thư viện bổ sung giúp đẩy nhanh quá trình phát triển ứng dụng.

Bộ công cụ này sử dụng các thư viện tốt nhất trong lớp cho các trường hợp sử dụng nội dung đa phương tiện, từ giao diện người dùng được triển khai bằng Compose cho Wear OS đến các chức năng phát được triển khai bằng Media3. Nếu ứng dụng của bạn có các yêu cầu cụ thể, bạn có thể áp dụng việc triển khai giao diện người dùng từ bộ công cụ trong khi vẫn dựa vào trình phát hiện có.

Bộ công cụ đa phương tiện có thể giúp bạn giải quyết các thách thức như tránh phát nội dung đa phương tiện trên loa tích hợp của đồng hồ, bật tính năng chuyển tải âm thanh và tránh việc ping mạng không cần thiết.

Thiết kế ứng dụng đa phương tiện cung cấp hướng dẫn mà bạn triển khai bằng Horologist, cũng như thông tin về cấu trúc và các trường hợp sử dụng cho Wear OS.

Tạo trải nghiệm người dùng như mong đợi trên Wear OS

Khi tạo ứng dụng đa phương tiện trên Wear OS, hãy cân nhắc xem trải nghiệm người dùng trên đồng hồ khác với trên thiết bị di động như thế nào, đặc biệt là về những điều sau:

  • Loa tích hợp không được thiết kế để phát nhạc. Do đó, hãy sử dụng loa hoặc tai nghe Bluetooth.
  • Khả năng kết nối mạng bị hạn chế hoặc khác nhau, vì vậy, bạn nên tối ưu hoá ứng dụng của mình cho các điều kiện mạng khác nhau và giảm thiểu việc sử dụng mạng.
  • Pin nhỏ hơn có nguồn điện hạn chế. Pin sẽ hao nhanh hơn khi thiết bị xử lý âm thanh trên CPU chính và khi thiết bị có tín hiệu LTE kém. Thêm tính năng hỗ trợ chuyển tải âm thanh để giúp tiết kiệm pin.
  • Thiết bị cung cấp một số nền tảng giao diện người dùng để cho phép người dùng tương tác lại với ứng dụng của bạn. Hãy giới thiệu các chức năng của ứng dụng trên các nền tảng này.

Sử dụng loa hoặc tai nghe Bluetooth

Mặc dù có thể dùng loa đồng hồ cho các cuộc gọi và hoạt động có hướng dẫn, nhưng loa đồng hồ không mang lại trải nghiệm tốt nhất khi nghe nội dung đa phương tiện.

Để mang lại trải nghiệm tốt nhất cho người dùng, ứng dụng của bạn có thể sử dụng Bộ công cụ đa phương tiện để đảm bảo ứng dụng phát âm thanh khi tai nghe hoặc loa Bluetooth được kết nối với đồng hồ.

Bộ công cụ đa phương tiện cung cấp một phần mở rộng Media3 cụ thể giúp trang trí thực thể ExoPlayer và chủ động dừng việc phát ngoài ý muốn trước khi phát ra âm thanh.

Tối ưu hoá cho các điều kiện mạng

Để ứng dụng đa phương tiện hoạt động hiệu quả trên đồng hồ, bạn cần đưa ra lựa chọn về các yếu tố cần cân nhắc khi phát trực tuyến và các điều kiện mạng sau đây:

  • Tối ưu hoá nội dung bằng cách chọn tốc độ bit thấp để phát trực tuyến, chẳng hạn như 48 kbps và các codec như AAC và MP3.
  • Tối ưu hoá chiến lược tìm nạp trước cho hình ảnh và bản nhạc để cho phép tiếp tục phát khi bạn tạm thời mất kết nối.
  • Kiểm thử ứng dụng của bạn trong tất cả các cấu hình mạng: Wi-Fi, LTE và đồng hồ kết nối với điện thoại bằng Bluetooth. Ngoài ra, hãy kiểm thử những gì xảy ra khi đồng hồ chuyển đổi giữa các mạng.

Bộ công cụ đa phương tiện Wear OS giúp xây dựng nền tảng của một ứng dụng hoạt động hiệu quả, chẳng hạn như cung cấp mô-đun Nhận biết mạng để chọn kết nối tốt hơn cho một thao tác cụ thể.

Bật tính năng chuyển tải âm thanh

Để cải thiện hiệu suất và giảm mức tiêu thụ điện năng cho các ứng dụng trên Wear OS, hãy sử dụng tính năng chuyển tải âm thanh. Tính năng này cho phép chuyển tải quá trình xử lý âm thanh từ CPU sang bộ xử lý tín hiệu chuyên dụng. Bộ công cụ đa phương tiện hỗ trợ AudioOffloadManager

Nếu bạn không chắc liệu tính năng chuyển tải âm thanh có được hỗ trợ cho một định dạng âm thanh nhất định hay không, hãy sử dụng phương thức AudioManager.isOffloadedPlaybackSupported(). Để biết thêm thông tin, hãy xem tài liệu về Exoplayer.

Tránh kết nối mạng trừ phi thực sự cần thiết

Khi phát triển cho Wear OS, bạn có thể dự kiến người dùng sẽ có khả năng kết nối mạng hạn chế. Bằng cách sử dụng MediaDownloadService, bạn cho phép người dùng tải xuống một cách đáng tin cậy và hiệu quả để họ có thể phát nội dung đa phương tiện khi đang di chuyển.

Bộ công cụ này cho phép bạn tối ưu hoá các tệp tải xuống đa phương tiện một cách hiệu quả hơn bằng cách sử dụng DownloadManager của Media3's và WorkManager của AndroidX để lên lịch tải xuống.

Media3 bắt đầu tất cả các thông báo và dịch vụ trên nền trước cần thiết. Mã ứng dụng mẫu định cấu hình WorkManager để chạy các tệp tải xuống khi có kết nối Wi-Fi nhằm mang lại hiệu suất tốt hơn. Việc sử dụng mô-đun Nhận biết mạng cho phép nhà phát triển liên kết các thao tác mạng với loại mạng.

Giúp người dùng biết về quá trình phát nội dung đa phương tiện đang diễn ra

Trên Wear OS 3 trở lên, một thông báo đang diễn ra có thể xuất hiện trên nhiều nền tảng trong giao diện người dùng Wear OS. Khi thông báo hoạt động đang diễn ra được nhấn, ứng dụng sẽ mở màn hình trình phát.

Với Media3, Wear OS tự động xử lý việc tạo các hoạt động đang diễn ra cho các ứng dụng đa phương tiện có ý định mở ứng dụng. Điều này giúp người dùng tương tác nhiều hơn với các hoạt động chạy trong thời gian dài, chẳng hạn như phát nội dung đa phương tiện.