Работа с компонентами архитектуры Android, такими как: View Model, LiveData и т. Д. Я хотел бы предложить вам следовать Официальному руководству от Android.
При использовании компонентов архитектуры Android длявызовите запрос API, как я пытаюсь достичь своей цели следующим образом:
- Создайте один класс Repo, в этом классе инициализируйте интерфейс Retrofit (если используется Retrofit).Создайте функцию, которая вызывает необходимый API, обрабатывает ответ на запрос и возвращает живые данные.Создайте дополнительные функции для параметра, передаваемого с URL.
- Создайте в этом классе один класс View Model, инициализируйте его над классом Repo.Создайте функцию, которая вызывает функцию класса репо, которая возвращает Live Data, и эта функция также возвращает LiveData.Создайте дополнительные функции для параметра, который будет передаваться в Repo для добавления с URL.
- В вашем классе View (Activity / Fragment) инициализируйте класс View Model и передайте те параметры, которые являются обязательными параметрами URL.Вызовите функцию View Model, которая возвращает живые данные, и заметьте, что в вашем классе View.
Вы получите данные в своем классе просмотра, когда любое изменение появится в Live Data.
вышеЭто простая практика, но ее можно исправить, если сделать ответы общего характера в соответствии с вашими требованиями.