11

I have an Activity and fragment which is settled through jetpack navigation.

One of my activity has launchMode set to singleTop in AndroidManifest.xml file.

When I use startActivity method in my fragment it works as expected no any new Activity creating if there already is an Activity instance with the same type at the top of stack in the caller Task.

But if use startActivityForResult then new Activity instances keep creating even if it's already on the top of back stack.

This issue I facing on latest Android 9 version. I tested my code on older versions of Android (4.1) and singleTop launch mode works as expected.

What is interesting if I set programatically launch mode with this code:

val intent = Intent(context, T::class.java)
intent.flags = Intent.FLAG_ACTIVITY_SINGLE_TOP or Intent.FLAG_ACTIVITY_CLEAR_TOP

singleTop launch mode with startActivityForResult start to work properly on Android 9 without any issue.

Then why it doesn't work from AndroidManifest.xml? What I missed?

Arsenius
  • 4,972
  • 4
  • 26
  • 39

0 Answers0