Что является эквивалентом Android LiveData во Flutter? - PullRequest
0 голосов
/ 06 мая 2018

LiveData Android позволяет обновлять пользовательский интерфейс, когда активность находится в активном состоянии. Таким образом, если фоновая операция завершена во время приостановки действия, действие не будет уведомлено, и, следовательно, приложение не будет разрушено. Может ли Flutter вести себя так же?

1 Ответ

0 голосов
/ 06 мая 2018

Вы можете использовать WidgstsBindingObserver для прослушивания состояния приложения.

class AppLifecycleReactor extends StatefulWidget {
  const AppLifecycleReactor({ Key key }) : super(key: key);

  @override
  _AppLifecycleReactorState createState() => new _AppLifecycleReactorState();
}

class _AppLifecycleReactorState extends State<AppLifecycleReactor> with WidgetsBindingObserver {
  @override
  void initState() {
    super.initState();
    WidgetsBinding.instance.addObserver(this);
  }

  @override
  void dispose() {
    WidgetsBinding.instance.removeObserver(this);
    super.dispose();
  }

  AppLifecycleState _notification;

  @override
  void didChangeAppLifecycleState(AppLifecycleState state) {
    setState(() { _notification = state; });
  }

  @override
  Widget build(BuildContext context) {
    return new Text('Last notification: $_notification');
  }
}
...