Как правильно подписываться на LiveData во фрагментах?

Посмотреть в Telegram: @AndroidSobes/198
Класс Fragment реализует интерфейс LifecycleOwner, поэтому в метод LiveData.observe() первым параметром можно передавать this, также как в Activity.

Но жизненный цикл View отличается от жизненного цикла фрагмента. Ивент из LiveData может прийти после вызова метода onDestroyView(). В этом случае View фрагмента занулится, и при попытке обновления UI будет брошен NullPointerException.

Поэтому рекомендуется использовать метод getViewLifecycleOwner(), который возвращает объект LifecycleOwner, ассоциированный с жизненным циклом View.
В этом случае подписываться необходимо в методе onCreateView(), а после вызова onDestroyView() подписчик перейдет в состояние DESTROYED и автоматически отпишется от обновлений LiveData.