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.
Trình chạy
hiển thị nhãn và biểu tượng cho mọi lượt tiếp tục gần đây
công việc. Nếu gói ứng dụng của bạn có nhiều ứng dụng dưới dạng các hoạt động của trình chạy riêng biệt, trình chạy sẽ không biết nhãn và biểu tượng nào sẽ hiện cho các hoạt động không phải của trình chạy, chẳng hạn như các hoạt động đã chạy qua một thẻ thông tin hoặc thông báo. Điều này có thể
khiến ứng dụng của bạn không xuất hiện trong danh sách Recents (Gần đây) trong trình chạy hoặc hiện
lên không chính xác.
Gắn nhãn mọi hoạt động
Hãy đảm bảo các hoạt động của bạn, bao gồm cả các hoạt động không phải của trình chạy, được gắn nhãn đúng cách trong tệp kê khai như thể hiện ở các bước sau.
Hình 1. Ví dụ về hoạt động được gắn nhãn đúng cách.
Đối với mọi hoạt động trong tệp AndroidManifest.xml, hãy xác định xem chúng thuộc loại hoạt động của trình chạy nào.
Sao chép biểu tượng, biểu tượng hình tròn và nhãn qua hoạt động của trình chạy gốc vào các hoạt động không phải của trình chạy được liên kết.
Đối với các hoạt động được chia sẻ giữa nhiều hoạt động của trình chạy, hãy quyết định biểu tượng và nhãn nào để hiển thị nhằm biểu diễn mọi hoạt động đó.
Giao RecentTasks
Để sử dụng RecentTasks trong mục Gần đây trong trình chạy, hãy đảm bảo các phần tử taskAffinityđược xác định chính xác trong tệp AndroidManifest.xml và bạn quản lý các nhiệm vụ cũng như ngăn xếp lui một cách nhất quán.
Hãy cân nhắc những điều sau khi bạn giao nhiệm vụ:
Chọn một tên taskAffinity riêng biệt cho từng nhiệm vụ trong ứng dụng của bạn. Bạn có thể coi mỗi hoạt động của trình chạy và các hoạt động con của trình chạy đó là một nhiệm vụ. Gán taskAffinity đó cho mọi hoạt động liên quan trong tệp kê khai.
Tránh tạo các hoạt động đàn hồi (nhún nhảy), vì đây là những hoạt động chỉ chạy các hoạt động khác. Tạo màn hình chờ bằng cách sử dụng API SplashScreen.
Sử dụng cờ android:excludeFromRecents="true" và android:noHistory="true" khi bạn không muốn hoạt động của mình xuất hiện trong mục Gần đây.
Xác định chế độ chạy tốt nhất cho các hoạt động và lưu ý đến điều này trong quá trình phát triển ứng dụng.
Mẹo gỡ lỗi
Khi gỡ lỗi, hãy chú ý đến những vấn đề sau:
Nếu có các mục nhập kép trong phần Gần đây của một ứng dụng, hãy kiểm tra xem bạn có đang sử dụng cờ NEW_TASK một cách không phù hợp hay không.
Nếu bạn nhìn thấy biểu tượng hoặc nhãn không chính xác, hãy đảm bảo mọi hoạt động không phải của trình chạy được liên kết đều có cùng biểu tượng, biểu tượng hình tròn và nhãn như hoạt động gốc.
Nếu hệ thống không chạy hoạt động sau khi nhấn vào mục trong trình chạy, hãy kiểm tra Logcat (được lọc trên “trình chạy”) để tìm lỗi vì vấn đề này có thể do hoạt động trampoline gây ra.
Đề xuất cho bạn
Lưu ý: văn bản có đường liên kết sẽ hiện khi JavaScript tắt
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,["# Appear in recents and app resume\n\nThe [launcher](/training/wearables/user-interfaces#app_launcher_entries)\ndisplays a label and icon for any recently resumed\n[tasks](/guide/components/activities/tasks-and-back-stack). If your app package\nhas multiple apps as separate launcher activities, the launcher doesn't know\nwhich label and icon to show for non-launcher activities, such as\nactivities launched from a tile or a notification. This might\ncause your app to not show up in the **Recents** list in the launcher or to show\nup incorrectly.\n\nLabel all activities\n--------------------\n\nEnsure that your activities, including non-launcher activities, are properly\nlabelled in your manifest file, as shown in the following steps.\n\n\n**Figure 1.** Examples of properly labeled activities.\n\n1. For every activity in your `AndroidManifest.xml` file, determine which launcher activity it belongs to.\n2. Copy the icon, round icon, and label from the parent launcher activity into each associated non-launcher activity.\n3. For activities that are shared among multiple launcher activities, decide\n which icon and label to display that represents all of them.\n\n | **Note:** If the launcher is unable to determine the correct icon and label, it defaults to the icon and label of your application tag.\n\nAssign RecentTasks\n------------------\n\nTo use `RecentTasks` for the **Recents** section in the launcher, ensure that your\n`taskAffinity` elements are correctly defined in your `AndroidManifest.xml` file and\nthat you manage your tasks and back stack consistently.\n\nKeep the following considerations in mind as you assign tasks:\n\n- Choose a unique [`taskAffinity`](/guide/topics/manifest/activity-element#aff) name for each task in your app. You can consider each launcher activity and its children as one task. Assign that `taskAffinity` to every related activity in your manifest file.\n- Avoid calling `startActivity()` with [`FLAG_ACTIVITY_NEW_TASK`](/reference/android/content/Intent#FLAG_ACTIVITY_NEW_TASK) or [`FLAG_ACTIVITY_CLEAR_TOP`](/reference/android/content/Intent#FLAG_ACTIVITY_CLEAR_TOP).\n- Avoid creating *trampoline activities* , which are activities that only launch other activities. Create splash screens using the [SplashScreen API](/reference/android/R.attr#windowSplashscreenContent).\n- Use `android:excludeFromRecents=\"true\"` and `android:noHistory=\"true\"` flags when you don't want your activity to show up in the **Recents** section.\n- Determine the best [launch mode](/guide/components/activities/tasks-and-back-stack#TaskLaunchModes) for your activities and develop with that in mind.\n\nDebugging tips\n--------------\n\nLook out for the following things when debugging:\n\n- If there are double entries in the **Recents** section for a single app, check whether you are using the `NEW_TASK` flag inappropriately.\n- If the wrong icon or label displays, ensure that each associated non-launcher activity has the same icon, round icon, and label as its parent activity.\n- If the system doesn't launch anything after tapping the entry in the launcher, check Logcat (filtered on \"launcher\") for errors, as this issue can be caused by a trampoline activity.\n\nRecommended for you\n-------------------\n\n- Note: link text is displayed when JavaScript is off\n- [Tasks and the back stack](/guide/components/activities/tasks-and-back-stack)\n- [Create custom Quick Settings tiles for your app](/develop/ui/views/quicksettings-tiles)\n- [Learn Jetpack Navigation](/codelabs/android-navigation)"]]