App Widget là một dạng xem ứng dụng nhỏ có thể được nhúng vào các ứng dụng khác (chẳng hạn như màn hình chính) và cập nhật nội dung thường xuyên. Các chế độ xem này được gọi là “tiện ích con” trong giao diện người dùng và các tiện ích con có thể được xuất bản thông qua Nhà cung cấp tiện ích con ứng dụng. Thành phần ứng dụng có thể chứa các Tiện ích ứng dụng khác được gọi là máy chủ Tiện ích ứng dụng (ví dụ: màn hình chính).
Để tạo một App Widget, bạn cần có những nội dung cơ bản sau:
– Đối tượng AppWidgetProviderInfo: Mô tả siêu dữ liệu của Tiện ích ứng dụng, chẳng hạn như bố cục, kích thước, tần suất cập nhật, v.v. của Tiện ích ứng dụng. Đối tượng này phải được xác định trong tệp XML trong thư mục res / xml.
– Triển khai kế thừa lớp AppWidgetProvider: AppWidgetProvider kế thừa từ BroadcastReceiver và xác định bên trong phương thức giao diện để triển khai App Widget dựa trên các sự kiện truyền phát. Thông qua lớp này, khi App Widget được cập nhật, bật, tắt và xóa, nó sẽ nhận được các chương trình phát sóng tương ứng. Bố cục chế độ xem Tiện ích ứng dụng Tệp bố cục dạng xem của Tiện ích ứng dụng, tệp bố cục XML được xác định theo res / layout.
Cách cài đặt widget:
– Bước 1: ạo tệp bố cục tiện ích con. Thêm tệp bố cục của tiện ích vào dự án. Tệp bố trí giống như tệp bố cục bình thường, nhưng cần lưu ý rằng App Widget có hỗ trợ hạn chế cho bố cục và điều khiển.
Các lớp bố cục được hỗ trợ bởi các tệp bố cục Tiện ích ứng dụng như: FrameLayout, LinearLayout, RelativeLayout, GridLayout.
Các lớp tiện ích con được hỗ trợ bởi tệp bố cục Tiện ích con ứng dụng: AnalogClock, Chronometer,Button, ImageButton, ImageView, ProgressBar, TextView,…
Bắt đầu từ Android 4.0 (Api cấp 14), lề sẽ tự động được thêm vào Tiện ích ứng dụng. Nếu targetSdkVersion của bạn được đặt thành 14 trở lên, bạn không cần phải định cấu hình tùy chọn này. Để thêm lề vào App Widget, bạn chỉ cần thêm thuộc tính android: padding vào bố cục gốc của bố cục.
– Bước 2: Thêm cấu hình siêu dữ liệu AppWidgetProviderInfo
AppWidgetProviderInfo là một tệp XML được đặt trong res / xml, mô tả các thuộc tính cơ bản của Tiện ích ứng dụng, chẳng hạn như kích thước bố cục tối thiểu, kích thước bố cục ban đầu, khoảng thời gian cập nhật và Hoạt động cấu hình (tùy chọn), v.v. Nút gốc của tệp cấu hình là một phần tử duy nhất của <appwidget-provider>.
– Bước 3: Tạo lớp nhà cung cấp tiện ích con
Lớp AppWidgetProvider kế thừa từ lớp BroadcastReceiver và thực hiện các logic liên quan bên trong để mang lại sự thuận tiện cho việc xử lý các chương trình phát App Widget. AppWidgetProvider sẽ chỉ nhận các chương trình phát sóng liên quan đến App Widget, chẳng hạn như: App Widget đã cập nhật (cập nhật), đã xóa (delete), kích hoạt (enable), vô hiệu hóa (vô hiệu hóa), khi nhận được các chương trình phát sóng này AppWidgetProvider sẽ gọi phương thức tương ứng.
– Bước 4: Khai báo App Widget trong AndroidManifest.xml
Sau khi hoàn thành các bước trên, bạn có thể biên dịch và cài đặt ứng dụng, sau đó bạn có thể thêm App Widget trên màn hình nền của thiết bị.