顯示在應用程式「最近使用」和「繼續使用」裡

啟動器會針對近期曾繼續使用的每項工作,顯示標籤和圖示。如果應用程式套件包含多個應用程式做為個別啟動器活動,此時啟動器無法知道非啟動器活動 (例如資訊方塊或通知的活動) 要顯示哪個標籤和圖示。這可能導致應用程式無法顯示在啟動器的「最近使用」清單中,或顯示不正確。

為所有活動加上標籤

請確認您的活動 (包括非啟動器活動) 已在資訊清單檔案中正確加上標籤,如下所示。

圖 1. 正確添加標籤的活動範例。

  1. 針對 AndroidManifest.xml 中的每個活動,判斷其所屬的啟動器活動。
  2. 複製父項啟動器活動中的圖示、圓形圖示和標籤,並貼到各個相關的非啟動器活動中。
  3. 如果活動由多個啟動器活動共用,請決定要顯示哪個圖示和標籤來代表所有啟動器活動。

指派 RecentTasks

如要在啟動器的「最近使用」部分使用 RecentTasks,請確認已正確定義 AndroidManifest.xml 檔案中的 taskAffinity 元素,且工作和返回堆疊的管理方式也必須一致。

指派工作時,請注意下列事項:

  • 為應用程式中的每項工作選擇專屬的 taskAffinity 名稱。您可以將每個啟動器活動及其子項視為同一項工作。將 taskAffinity 指派給資訊清單檔案中的每個相關活動。
  • 避免使用 FLAG_ACTIVITY_NEW_TASKFLAG_ACTIVITY_CLEAR_TOP 呼叫 startActivity()
  • 請避免建立只用於啟動其他活動的「Trampoline 活動」。請使用 SplashScreen API 建立啟動畫面。
  • 如果您不希望活動顯示在「最近使用」部分中,請使用 android:excludeFromRecents="true"android:noHistory="true" 旗標。
  • 根據活動決定最適合的啟動模式,開發過程中也須留意這點。

偵錯提示

偵錯時,請注意下列事項:

  • 如果單一應用程式的「最近使用」部分有重複項目,請檢查 NEW_TASK 旗標的使用方式是否正確。
  • 如果圖示或標籤顯示錯誤,請確認每個相關聯的非啟動器活動都使用父項活動的圖示、圓形圖示和標籤。
  • 如果在輕觸啟動器中的項目後,系統並未啟動任何項目,請查看「啟動器」篩選的 Logcat 是否有錯誤,因為這個問題可能是 Trampoline 活動所致。