Avatar
1
uzumaki258 Beginner
uzumaki258 Beginner
Force restart state when update app from appstore
Chào mọi người, Do có nhiều thay đổi trong cấu trúc database, nên e phải thêm 1 bước migration database rồi mới vào app. Cái này e để ngay khi spash xong thì chạy code này.

Thì e đang gặp trường hợp là nếu app đó đang ở state, và khi vào Google Play update thì app vẫn đang ở background. Và khi update xong mở lên thì app ko thể vào đc từ spash nên db chưa được migration, mà code thì là code mới rồi, dẫn đến việc sai nhiều thứ.

Không biết có cách nào force migration được ko mọi người nhỉ. Mong mọi người giúp đỡ ạ!

  • Answer
Remain: 5
1 Answer
Avatar
monkey Beginner
monkey Beginner
Anh nghĩ khi app từ background được mở lên thì sẽ có sự kiện được fire nhỉ? Vậy em có thể bắt ở flutter sự kiện này và làm cái gì đó.

<code>class _MyHomePageState extends State<MyHomePage> with WidgetsBindingObserver {
  AppLifecycleState? _notification; 
  @override
  void didChangeAppLifecycleState(AppLifecycleState state) {
    setState(() {
      _notification = state;
    });
  }

  @override
  void initState() {
    super.initState();
    WidgetsBinding.instance?.addObserver(this);
    ...
  }

  @override
  void dispose() {
    WidgetsBinding.instance?.removeObserver(this);
    super.dispose();
  }
}
</code>

Nếu ở flutter không có sự kiện, em có thể bắt sự kiện ở native rồi gọi qua flutter anh nghĩ là được em ạ.

  • 0
  • Reply