Всем привет.
Потихоньку изучаю архитектуры Single-Activity и MVVM, переписываю под них свой крохотный пет-проджект.
До этого в приложении было 2 активности: MainActivity со всей логикой приложения, SharedPreferences, которые сохранялись и подгружались на onPause() / onResume и SettingsActivity с PreferenceScreen.
Сейчас у меня 1 MainActivity, в котором NavContoller меняет 3 отдельных фрагмента, между всем этим прослойка SharedViewModel, которая хранит значения переменных, использующихся двумя разными фрагментами.
Почти перенёс приложение на такую архитектуру, но забуксовал с SharedPreferences.
Вопрос: как в таком случае по уму работать с SharedPreferences?
- На уровне активности создавать и подгружать все значения из onPause() / onResume и вытягивать их во фрагменты через SharedViewModel?
- Или в активности не должно быть ничего про общие настройки и все вышеописанные манипуляции с SharedPreferences нужно делать в самих фрагментах и их соответствующих методах?
Что-то в доках и стэкОверфлоу на этот счёт размытая информация.
p.s. Я новичок, пишу на джаве, API 28.