How to exclude from recents an exported activity?

2019-04-08 00:21发布

I have an app with an exported activity that can be invoked from other apps (Specifically the sharing action - android.intent.action.SEND)

How can an exported activity be excluded from recents?

I don't see a way to set the FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS flag, because it is invoked from the outside.

The reason I want to do this is because this intent becomes the last one in my activity stack, thus when clicking on the recents, a file is being re-shared instead of the main activity to pop up.

Note: android:launchMode="singleTask" solves the problem in a specific case, only where another activity is on top. BUT, this isn't an option because it disrupts the user task flow and doesn't work if there is no other app's activity at the root.

1条回答
手持菜刀,她持情操
2楼-- · 2019-04-08 00:44

You can add the android:excludeFromRecents attirbute to your <activity> element in the manifest with a value of true:

<activity
    android:name="XYZ"
    android:excludeFromRecents="true">
查看更多
登录 后发表回答