Что такое LiveData?

Посмотреть в Telegram: @AndroidSobes/194
LiveData – это класс, который хранит данные и реализует паттерн Observable. LiveData входит в Android Jetpack.
Преимущество LiveData перед другими реализациями шаблона Observable в том, что LiveData заточена на работу с жизненными циклами Android компонентов, таких как Activity, Fragment и Service.
Для подписки на обновления LiveData используется метод observe(), который принимает объект типа LifecycleOwner и функциональный интерфейс Observer.
Интерфейс LifecycleOwner реализуется классами Android компонентов, например AppCompatActivity, LifecycleService, Fragment.

LiveData доставляет данные только наблюдателям, которые находятся в активном состоянии. Observer входит в активное состояние, когда соответствующий ему lifecycle переходит в состояние STARTED или RESUMED.

LiveData автоматически отписывает наблюдателей, когда их lifecycle переходит в состояние DESTROYED.