diff --git a/shell/platform/android/io/flutter/embedding/engine/systemchannels/LifecycleChannel.java b/shell/platform/android/io/flutter/embedding/engine/systemchannels/LifecycleChannel.java index f34f774536018..6ea0814fe0ba5 100644 --- a/shell/platform/android/io/flutter/embedding/engine/systemchannels/LifecycleChannel.java +++ b/shell/platform/android/io/flutter/embedding/engine/systemchannels/LifecycleChannel.java @@ -30,7 +30,7 @@ public class LifecycleChannel { private String lastAndroidState = ""; private String lastFlutterState = ""; - private boolean lastFocus = false; + private boolean lastFocus = true; @NonNull private final BasicMessageChannel channel; diff --git a/shell/platform/android/test/io/flutter/embedding/engine/systemchannels/LifecycleChannelTest.java b/shell/platform/android/test/io/flutter/embedding/engine/systemchannels/LifecycleChannelTest.java index e9211d5f3b411..3adc80212b2d7 100644 --- a/shell/platform/android/test/io/flutter/embedding/engine/systemchannels/LifecycleChannelTest.java +++ b/shell/platform/android/test/io/flutter/embedding/engine/systemchannels/LifecycleChannelTest.java @@ -31,29 +31,29 @@ public void lifecycleChannel_handlesResumed() { lifecycleChannel.appIsResumed(); ArgumentCaptor stringArgumentCaptor = ArgumentCaptor.forClass(String.class); verify(mockChannel, times(1)).send(stringArgumentCaptor.capture()); - assertEquals("AppLifecycleState.inactive", stringArgumentCaptor.getValue()); + assertEquals("AppLifecycleState.resumed", stringArgumentCaptor.getValue()); - lifecycleChannel.aWindowIsFocused(); + lifecycleChannel.noWindowsAreFocused(); stringArgumentCaptor = ArgumentCaptor.forClass(String.class); verify(mockChannel, times(2)).send(stringArgumentCaptor.capture()); - assertEquals("AppLifecycleState.resumed", stringArgumentCaptor.getValue()); + assertEquals("AppLifecycleState.inactive", stringArgumentCaptor.getValue()); - lifecycleChannel.noWindowsAreFocused(); + lifecycleChannel.aWindowIsFocused(); stringArgumentCaptor = ArgumentCaptor.forClass(String.class); verify(mockChannel, times(3)).send(stringArgumentCaptor.capture()); - assertEquals("AppLifecycleState.inactive", stringArgumentCaptor.getValue()); + assertEquals("AppLifecycleState.resumed", stringArgumentCaptor.getValue()); // Stays inactive, so no event is sent. lifecycleChannel.appIsInactive(); - verify(mockChannel, times(3)).send(any(String.class)); + verify(mockChannel, times(4)).send(any(String.class)); // Stays inactive, so no event is sent. lifecycleChannel.appIsResumed(); - verify(mockChannel, times(3)).send(any(String.class)); + verify(mockChannel, times(5)).send(any(String.class)); lifecycleChannel.aWindowIsFocused(); stringArgumentCaptor = ArgumentCaptor.forClass(String.class); - verify(mockChannel, times(4)).send(stringArgumentCaptor.capture()); + verify(mockChannel, times(5)).send(stringArgumentCaptor.capture()); assertEquals("AppLifecycleState.resumed", stringArgumentCaptor.getValue()); }