Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
## NEXT
1. Adapt to the official engine's App Lifecycle state changes

## 5.0.1
1. Add `mixin` modifier to avoid breaking user codes
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,9 @@ public class FlutterBoostPlugin implements FlutterPlugin, NativeRouterApi, Activ
private static final String TAG = "FlutterBoost_java";
private static final String APP_LIFECYCLE_CHANGED_KEY = "app_lifecycle_changed_key";
private static final String LIFECYCLE_STATE = "lifecycleState";
private static final int FLUTTER_APP_STATE_RESUMED = 0;
private static final int FLUTTER_APP_STATE_PAUSED = 2;
// See https://github.com/flutter/engine/pull/42418 for details
private static final int FLUTTER_APP_STATE_RESUMED = 1;
private static final int FLUTTER_APP_STATE_PAUSED = 4;

private FlutterEngine engine;
private FlutterRouterApi channel;
Expand Down
2 changes: 1 addition & 1 deletion example/ios/Podfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'
platform :ios, '11.0'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
Expand Down
4 changes: 2 additions & 2 deletions ios/Classes/container/FBLifecycle.m
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,14 @@
@implementation FBLifecycle
+ (void)pause {
[[FlutterBoost instance]sendEventToFlutterWith:@"app_lifecycle_changed_key"
arguments:@{@"lifecycleState":@2}];
arguments:@{@"lifecycleState":@4}];
if (ENGINE.viewController != nil){
ENGINE.viewController = nil;
}
}

+ (void)resume {
[[FlutterBoost instance]sendEventToFlutterWith:@"app_lifecycle_changed_key"
arguments:@{@"lifecycleState":@0}];
arguments:@{@"lifecycleState":@1}];
}
@end
1 change: 0 additions & 1 deletion lib/src/boost_flutter_binding.dart
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ mixin BoostFlutterBinding on WidgetsFlutterBinding {
void initInstances() {
super.initInstances();
_instance = this;
changeAppLifecycleState(AppLifecycleState.resumed);
}

static BoostFlutterBinding? get instance => _instance;
Expand Down
7 changes: 4 additions & 3 deletions lib/src/flutter_boost_app.dart
Original file line number Diff line number Diff line change
Expand Up @@ -122,9 +122,10 @@ class FlutterBoostAppState extends State<FlutterBoostApp> {
void _addAppLifecycleStateEventListener() {
_lifecycleStateListenerRemover = BoostChannel.instance
.addEventListener(_appLifecycleChangedKey, (key, arguments) {
//we just deal two situation,resume and pause
//and 0 is resumed
//and 2 is paused
// we just deal two situation,resume and pause
// and 1 is resumed
// and 4 is paused
// See https://github.com/flutter/engine/pull/42418 for more details.

final int? index = arguments["lifecycleState"];

Expand Down