Tiện ích là một phần thiết yếu của hoạt động tuỳ chỉnh màn hình chính. Bạn có thể coi các thẻ này là chế độ xem "xem nhanh" về dữ liệu và chức năng quan trọng nhất của ứng dụng mà người dùng có thể truy cập ngay trên màn hình chính. Người dùng có thể di chuyển các tiện ích trên bảng điều khiển màn hình chính và đổi kích thước các tiện ích đó (nếu được hỗ trợ) để điều chỉnh lượng thông tin trong tiện ích theo lựa chọn ưu tiên của họ.
Tài liệu này giới thiệu các loại tiện ích mà bạn có thể tạo và các nguyên tắc thiết kế cần tuân thủ. Để tạo tiện ích ứng dụng bằng API Khung hiển thị từ xa và bố cục XML, hãy xem phần Tạo tiện ích đơn giản. Để tạo một tiện ích bằng cách sử dụng API kiểu Kotlin và Compose, hãy xem phần Jetpack Glance.
Loại tiện ích
Khi lên kế hoạch cho tiện ích, hãy nghĩ đến loại tiện ích mà bạn muốn tạo. Tiện ích thường thuộc một trong các danh mục sau:
Tiện ích thông tin
Tiện ích thông tin thường hiển thị các phần tử thông tin quan trọng và theo dõi cách thông tin đó thay đổi theo thời gian. Ví dụ về tiện ích thông tin là tiện ích thời tiết, tiện ích đồng hồ hoặc tiện ích theo dõi tỷ số thể thao. Thao tác nhấn vào các tiện ích thông tin thường sẽ chạy ứng dụng được liên kết và mở ra chế độ xem chi tiết của thông tin tiện ích đó.
Tiện ích bộ sưu tập
Tiện ích Tập hợp chuyên hiển thị nhiều phần tử thuộc cùng một loại, chẳng hạn như một tập hợp hình ảnh từ ứng dụng thư viện, một tập hợp bài viết từ ứng dụng tin tức hoặc một tập hợp email hoặc tin nhắn từ ứng dụng liên lạc. Tiện ích Tập hợp có thể cuộn theo chiều dọc.
Tiện ích bộ sưu tập thường tập trung vào các trường hợp sử dụng sau:
- Duyệt xem bộ sưu tập.
- Mở một phần tử của bộ sưu tập thành chế độ xem chi tiết trong ứng dụng liên kết.
- Tương tác với các phần tử, chẳng hạn như đánh dấu các phần tử đó là đã hoàn tất, với tính năng hỗ trợ các nút phức hợp trong Android 12 (API cấp 31).
Điều khiển tiện ích
Mục đích chính của tiện ích điều khiển là hiển thị các chức năng thường dùng để người dùng có thể kích hoạt các chức năng đó từ màn hình chính mà không phải mở ứng dụng. Bạn có thể coi chúng là điều khiển từ xa cho một ứng dụng. Ví dụ về tiện ích điều khiển là tiện ích điều khiển nhà cho phép người dùng bật hoặc tắt đèn trong nhà.
Việc tương tác với một tiện ích điều khiển có thể mở một chế độ xem chi tiết liên kết trong ứng dụng. Điều này phụ thuộc vào việc chức năng của tiện ích điều khiển có xuất ra dữ liệu nào hay không, chẳng hạn như trong trường hợp của tiện ích tìm kiếm.
Tiện ích kết hợp
Mặc dù một số tiện ích đại diện cho một trong các loại trong các phần trước (thông tin, bộ sưu tập hoặc điều khiển), nhưng nhiều tiện ích là loại kết hợp kết hợp các phần tử thuộc nhiều loại. Ví dụ: tiện ích trình phát nhạc chủ yếu là một tiện ích điều khiển, nhưng cũng cho người dùng biết bản nhạc nào đang phát, chẳng hạn như tiện ích thông tin.
Khi lên kế hoạch cho tiện ích, hãy thiết kế xung quanh một trong các loại cơ sở và thêm các phần tử của các loại khác nếu cần.
Tích hợp tiện ích với Trợ lý Google
Trợ lý Google có thể hiển thị bất kỳ loại tiện ích nào để phản hồi lệnh thoại của người dùng. Bạn có thể định cấu hình tiện ích để thực hiện Thao tác trong ứng dụng, cho phép người dùng nhận câu trả lời nhanh và trải nghiệm ứng dụng tương tác trên các nền tảng của Trợ lý như Android và Android Auto. Để biết thêm thông tin chi tiết về việc thực hiện tiện ích cho Trợ lý, hãy xem bài viết Tích hợp Hành động trong ứng dụng với tiện ích Android.
Giới hạn của tiện ích
Mặc dù có thể hiểu tiện ích là "ứng dụng thu nhỏ", nhưng bạn cần nắm được một số giới hạn nhất định trước khi thiết kế tiện ích.
Cử chỉ
Vì các tiện ích nằm trên màn hình chính, nên chúng phải cùng tồn tại với trình điều hướng được thiết lập tại đó. Điều này giới hạn khả năng hỗ trợ cử chỉ có trong tiện ích so với ứng dụng toàn màn hình. Mặc dù các ứng dụng có thể cho phép người dùng di chuyển giữa các màn hình theo chiều ngang, nhưng cử chỉ đó đã được thực hiện trên màn hình chính để di chuyển giữa các màn hình chính.
Các cử chỉ duy nhất có sẵn cho tiện ích là chạm và vuốt theo chiều dọc.
Thành phần
Do các giới hạn về cử chỉ có sẵn cho tiện ích, một số thành phần giao diện người dùng dựa vào cử chỉ bị hạn chế không dùng được cho các tiện ích. Để xem danh sách đầy đủ các thành phần được hỗ trợ và thông tin khác về các hạn chế về bố cục, hãy xem phần Tạo bố cục tiện ích và Cung cấp bố cục tiện ích linh hoạt.
Hướng dẫn thiết kế
Nội dung tiện ích
Tiện ích là một cách hay để thu hút người dùng đến với ứng dụng của bạn bằng cách "quảng cáo" nội dung mới và thú vị có trong ứng dụng.
Giống như đoạn giới thiệu trên trang chủ của một tờ báo, các tiện ích hợp nhất và tập trung thông tin của ứng dụng, đồng thời kết nối với thông tin phong phú hơn trong ứng dụng. Bạn có thể nói tiện ích là thông tin "bữa ăn nhẹ" trong khi ứng dụng là "bữa ăn". Đảm bảo ứng dụng của bạn hiển thị nhiều thông tin chi tiết hơn về một mục thông tin so với nội dung mà tiện ích hiển thị.
Điều hướng tiện ích
Ngoài nội dung thông tin thuần tuý, hãy cân nhắc việc tạo tiện ích cung cấp các đường liên kết điều hướng đến các khu vực thường dùng trong ứng dụng. Điều này cho phép người dùng hoàn thành các tác vụ nhanh hơn và mở rộng phạm vi chức năng của ứng dụng đến màn hình chính.
Sau đây là những đề xuất phù hợp cho đường liên kết điều hướng trên tiện ích:
Hàm tạo sinh: đây là các hàm cho phép người dùng tạo nội dung mới cho một ứng dụng, chẳng hạn như tạo tài liệu mới hoặc thư mới.
Mở ứng dụng ở cấp cao nhất: thao tác nhấn vào một phần tử thông tin thường sẽ đưa người dùng đến màn hình chi tiết cấp thấp hơn. Việc cấp quyền truy cập vào cấp cao nhất của ứng dụng sẽ giúp người dùng di chuyển linh hoạt hơn và có thể thay thế lối tắt ứng dụng chuyên dụng mà người dùng sử dụng để chuyển đến ứng dụng từ màn hình chính. Việc sử dụng biểu tượng ứng dụng cho chức năng này cũng có thể cung cấp cho tiện ích của bạn một danh tính rõ ràng nếu dữ liệu bạn hiển thị không rõ ràng.
Đổi kích thước tiện ích
Thao tác chạm và giữ một tiện ích có thể đổi kích thước, sau đó thả ra sẽ đưa tiện ích đó vào chế độ đổi kích thước. Người dùng có thể sử dụng các tay cầm kéo hoặc góc tiện ích để đặt kích thước ưu tiên.
Tính năng đổi kích thước cho phép người dùng điều chỉnh chiều cao và chiều rộng của tiện ích trong giới hạn của lưới vị trí màn hình chính. Bạn có thể quyết định xem tiện ích của mình có thể thay đổi kích thước tự do hay bị ràng buộc với các thay đổi về kích thước theo chiều ngang hoặc chiều dọc. Bạn không cần phải hỗ trợ việc đổi kích thước nếu tiện ích của bạn vốn có kích thước cố định.
Việc cho phép người dùng đổi kích thước tiện ích mang lại những lợi ích quan trọng:
- Họ có thể tinh chỉnh lượng thông tin họ muốn xem trên mỗi tiện ích.
- Các chế độ này có thể ảnh hưởng tốt hơn đến bố cục của các tiện ích và lối tắt trên bảng điều khiển trang chủ.
Lên kế hoạch cho chiến lược đổi kích thước tiện ích theo loại tiện ích bạn đang tạo. Các tiện ích sưu tập dựa trên danh sách hoặc lưới thường đơn giản, vì việc đổi kích thước tiện ích sẽ mở rộng hoặc thu hẹp vùng cuộn dọc. Bất kể kích thước của tiện ích, người dùng vẫn có thể cuộn tất cả các phần tử thông tin vào chế độ xem.
Các tiện ích thông tin đòi hỏi bạn phải thực hiện nhiều bước lập kế hoạch hơn vì chúng không thể cuộn được và mọi nội dung phải vừa với một kích thước nhất định. Bạn phải linh động điều chỉnh nội dung và bố cục của tiện ích theo kích thước mà người dùng xác định thông qua thao tác đổi kích thước.
Trong ví dụ sau, người dùng có thể đổi kích thước tiện ích thời tiết theo 3 bước, hiển thị thông tin phong phú hơn về thời tiết tại vị trí hiện tại khi tiện ích phát triển.
Đối với mỗi kích thước tiện ích, hãy xác định lượng thông tin của ứng dụng sẽ hiển thị. Đối với các kích thước nhỏ hơn, hãy tập trung vào thông tin thiết yếu, sau đó thêm thông tin theo ngữ cảnh khi tiện ích phát triển theo chiều ngang và chiều dọc.
Những điều cần cân nhắc về bố cục
Bạn nên bố trí các tiện ích theo kích thước của lưới vị trí của thiết bị mà bạn phát triển. Đây có thể là một giá trị gần đúng ban đầu hữu ích, nhưng hãy lưu ý những điểm sau:
- Việc lập kế hoạch chiến lược đổi kích thước tiện ích trên "các nhóm kích thước" thay vì kích thước lưới biến đổi sẽ mang lại cho bạn kết quả đáng tin cậy nhất.
- Số lượng, kích thước và khoảng cách của các ô có thể khác nhau rất nhiều giữa các thiết bị. Do đó, điều quan trọng là tiện ích của bạn phải linh hoạt và có thể chứa nhiều hoặc ít dung lượng hơn dự kiến.
- Khi người dùng đổi kích thước tiện ích, hệ thống sẽ phản hồi bằng một phạm vi kích thước dp mà tiện ích của bạn có thể tự vẽ lại.
- Kể từ Android 12, bạn có thể cung cấp các thuộc tính kích thước tinh tế hơn và bố cục linh hoạt hơn. Trong đó có:
- Chỉ định các quy tắc ràng buộc về kích thước tiện ích. Ví dụ: bạn có thể chỉ định kích thước mục tiêu cho tiện ích (trong các ô lưới) cũng như kích thước tối đa có thể.
- Cung cấp bố cục thích ứng, thay đổi tuỳ thuộc vào kích thước của tiện ích.
- Cung cấp bố cục có kích thước chính xác, cho phép trình chạy phản hồi các tuỳ chọn kích thước cho chế độ dọc và ngang (dành cho điện thoại hoặc 4 kích thước cho thiết bị có thể gập lại).
- Sử dụng hướng dẫn cập nhật và API mới để xác định kích thước phù hợp cho tiện ích của bạn.
Cấu hình tiện ích theo người dùng
Đôi khi, người dùng cần thiết lập tiện ích thì tiện ích mới có thể sử dụng được. Hãy nghĩ đến một tiện ích email mà người dùng cần chọn thư mục thư trước khi hộp thư đến có thể hiển thị hoặc một tiện ích ảnh tĩnh mà người dùng phải chỉ định một bức ảnh trong thư viện để hiển thị. Tiện ích Android hiển thị các lựa chọn cấu hình ngay sau khi người dùng thả tiện ích vào màn hình chính.
Danh sách kiểm tra thiết kế tiện ích
- Tập trung vào các phần nhỏ của thông tin có thể xem nhanh trên tiện ích của bạn. Hãy mở rộng thông tin trong ứng dụng của bạn.
- Chọn loại tiện ích phù hợp với mục đích của bạn.
- Lên kế hoạch về cách nội dung của tiện ích thích ứng với nhiều kích thước.
- Tạo bố cục tiện ích độc lập với hướng và thiết bị bằng cách đảm bảo bố cục có thể kéo giãn và thu gọn.
- Cân nhắc xem tiện ích của bạn có cần thêm cấu hình nào không.