[英]How to remove activity from recent apps list on finish?
我正在從服務啟動活動,並希望它出現在最近的應用列表中。
但是,如果我退出應用程序,我希望從最近的應用程序列表中刪除活動(例如,按活動的UI上的按鈕調用finish())。
使用android:excludeFromRecents="true"
從最近的應用列表中排除活動並不能提供我所需的初始活動行為,即最近的應用列表中顯示的活動。
這可能嗎?
使用
android:excludeFromRecents="true"
清單文件中的活動
android:excludeFromRecents
是否應從最近使用的應用程序列表(“最近的應用程序”)中排除此活動啟動的任務。 也就是說,當此活動是新任務的根活動時,此屬性確定該任務是否不應出現在最近的應用列表中。 如果任務應從列表中排除,則設置為“true”; 如果應該包含它,則設置“false”。 默認值為“false”。
對於api> 21你可以嘗試finishAndRemoveTask()
而不是finish()
是的,通常當您想要在啟動時為Activity提供特殊屬性時,您需要為Intent提供特殊標志。 在這種情況下, FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS
。
更新:
如果您需要隱藏當前已在運行的活動,您可以將此標志與FLAG_ACTIVITY_CLEAR_TOP結合使用,這將把新Intent發送到現有的Activity。 您將不得不考慮並嘗試使用用戶在堆棧中移動時會發生什么,以及是否會使您的應用重新出現在最近的應用中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.