Kể từ ngày 27 tháng 3 năm 2025, bạn nên sử dụng android-latest-release
thay vì aosp-main
để xây dựng và đóng góp cho AOSP. Để biết thêm thông tin, hãy xem phần Thay đổi đối với AOSP.
Tiện ích và lối tắt
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
API flow mới để thêm lối tắt và tiện ích trong Android 8.0 cho phép nhà phát triển ứng dụng thêm lối tắt và tiện ích từ bên trong ứng dụng thay vì dựa vào khay tiện ích. Phương thức này cũng không dùng phương thức cũ (gửi thông báo truyền tin) để thêm lối tắt vì lý do bảo mật.
Trình chạy cần hỗ trợ phương thức triển khai mới này để nhà phát triển ứng dụng có thể dựa vào hệ thống để thêm lối tắt hoặc tiện ích.
Ví dụ và nguồn
Tài liệu có sẵn trong nhiều lớp hệ thống. Tài liệu tham khảo bao gồm:
- ShortcutManager.java
Xuất bản phần lối tắt được ghim trong tiêu đề.
- Intent.java
Javadoc cho ACTION_CREATE_SHORTCUT.
- AppWidgetManager.java
Javadoc cho requestPinAppWidget.
Triển khai
Người triển khai thiết bị cần thêm một hoạt động trong trình chạy bằng các thao tác bộ lọc ý định:
android.content.pm.action.CONFIRM_PIN_SHORTCUT
android.content.pm.action.CONFIRM_PIN_APPWIDGET
Hãy tham khảo tài liệu về API để biết thêm thông tin chi tiết.
Hoạt động này sẽ hiển thị lời nhắc xác nhận để người dùng thêm tiện ích/lối tắt được yêu cầu và sau khi chấp nhận, hãy thêm tiện ích/lối tắt tương ứng trên màn hình chính.
Trong trường hợp tiện ích, lệnh gọi accept()
phải bao gồm mã tiện ích của tiện ích mới thêm.
Triển khai giao diện người dùng hệ thống
Đối tác cần cập nhật ứng dụng Trình chạy bằng cách tham khảo cách triển khai Trình chạy 3 (packages/apps/Launcher3
).
Tìm các thay đổi liên quan đến Launcher3 trong Dự án nguồn mở Android (AOSP):
Xác nhận kết quả
Để xác thực tính năng này, hãy thử thêm lối tắt từ Chrome hoặc ứng dụng Danh bạ và xác minh rằng lời nhắc xác nhận thích hợp sẽ xuất hiện. Sau khi chấp nhận, biểu tượng sẽ được thêm vào màn hình chính và Chrome sẽ hiển thị thông báo ngắn về việc thêm thành công.
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2025-07-27 UTC.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-07-27 UTC."],[],[],null,["# Widgets and shortcuts\n\nThe new flow API for adding shortcuts and widgets in Android 8.0 allows\napp developers to add shortcuts and widgets from inside the app instead\nof relying on the widget tray. It also deprecates the old method (sending a\nbroadcast) of adding shortcuts for security reasons.\n\n\nLaunchers need to support this new implementation so that app developers can\nrely on the system to add their shortcut or widget.\n\nExamples and source\n-------------------\n\n\nDocs are available in various system class. References include the following:\n\n- **[ShortcutManager.java](https://developer.android.com/reference/android/content/pm/ShortcutManager.html)** \n Publish Pinned shortcut section in header.\n- **Intent.java** \n Javadoc for ACTION_CREATE_SHORTCUT.\n- **AppWidgetManager.java** \n Javadoc for requestPinAppWidget.\n\nImplementation\n--------------\n\n\nDevice implementers need to add an activity in their launcher with intent filter actions:\n\n- `android.content.pm.action.CONFIRM_PIN_SHORTCUT`\n- `android.content.pm.action.CONFIRM_PIN_APPWIDGET`\n\n\nRefer to the [API\ndocumentation](https://developer.android.com/reference/android/content/pm/LauncherApps.html) for more details.\n\n\nThis activity should display a confirmation prompt to the user to add the [requested\nwidget/shortcut](https://developer.android.com/reference/android/content/pm/LauncherApps.html) and upon accepting, add the corresponding widget/shortcut on\nthe homescreen.\n\n\nIn case of widgets, the `accept()` call should include the widget ID\nof the newly added widget.\n\n### Implementing a System UI\n\n\nPartners need to update their Launcher app using the Launcher3 implementation\n(`packages/apps/Launcher3`) as reference.\n\n\nFind the relevant Launcher3 changes in the Android Open Source Project (AOSP):\n\n- Change-Id: [8b2002e28072c52d78f6d052c6ff6da50a2d0324](https://android.googlesource.com/platform/packages/apps/Launcher3/+/8b2002e28072c52d78f6d052c6ff6da50a2d0324)\n- Change-Id: [278359539c02ca160caf1df54ce96053a2a2ef59](https://android.googlesource.com/platform/packages/apps/Launcher3/+/278359539c02ca160caf1df54ce96053a2a2ef59)\n\nValidation\n----------\n\n\nTo validate the feature, try to add shortcuts from Chrome or the Contacts app\nand verify that a proper confirmation prompt is shown. Upon accepting, the icon\nshould get added on the homescreen and Chrome should display a success toast."]]