Motivation
데이터(혹은 배터리) 사용량이 많을 것으로 예상되는 모바일 서비스를 제공함.
사용자가 앱을 사용하지 않을때는 동작을 멈춰서 불필요한 리소스 사용을 방지하는 기능 추가
Dependency
GetX
Keywords
app lifecycle
background / foreground processes
flutter getx app lifecycle
Implementation1 ; StatefulWidget
1. WidgetsBindingObserver
2. flutter_fgbg plugin: https://pub.dev/packages/flutter_fgbg
참고 출처
https://bb-library.tistory.com/215?category=943260
https://levelup.gitconnected.com/lets-utilize-the-flutter-app-lifecycle-388121533fd9
Implementation2 ; StatelessWidget
1. SuperController를 상속받은 GetX 클래스 생성 - 4가지 앱의 생명주기를 추적할 수 있는 매서드 오버라이드
2. GetXController 대신 FullLifeCycleController 상속 = extends GetXController with WidgetsBindingObserver
참고 출처
https://stackoverflow.com/questions/69907654/managing-app-lifecycle-state-with-getx-in-flutter
https://stackoverflow.com/questions/66170350/flutter-listen-to-lifecycle-events-on-stateless-widget
https://github.com/jonataslaw/getx/issues/877
결론
앱 생명주기를 모니터해야하는 클래스만 StatefulWidget으로 만들어서 WidgetsBindingObserver를 사용하는 방법이 간단함
'Flutter' 카테고리의 다른 글
[Flutter / GetX / 일반] firebase cloud messaging으로 push notification 구현(1) : android, iOS 사전 세팅 (0) | 2022.03.21 |
---|---|
[Flutter / 일반] 앱이 사용중인 데이터 유형 알려주기(mobile network) (0) | 2022.03.21 |
[Flutter / 일반] instance of 'Class' 활용 (0) | 2022.03.15 |
[Flutter / GetX] binding 사용하기 (0) | 2022.03.09 |
[Flutter / GetX] GetxService를 상속받기 (0) | 2022.03.09 |