В настоящее время я работаю над мультимодульным приложением.Основной модуль (приложение) обрабатывает экраны аутентификации, модуль источника данных обрабатывает все запросы сети / базы данных (на данный момент я использую один модуль, но я собираюсь разделить его), а затем некоторые функциональные модули, которые можно использовать на основена привилегии пользователя.
Я получаю токен после входа в систему, который я планирую хранить внутри SharedPreferences, но я хотел бы поместить его в Interceptor для моего клиента Retrofit в моем модуле источника данных, чтобы избежать его передачив качестве параметров для каждого вызова.
Я думал включить модуль кинжала, который обеспечивает контекст приложения внутри моего графа источника данных, но это добавило бы циклическую зависимость между приложением и источником данных.
Яиспользуя одноэлементный объект, который я внедряю внутри модуля приложения для извлечения данных из источника данных.
Поскольку мне также потребуется создать базу данных помимо доступа SharedPreferences, мне нужно будет извлечь контекст внутри моего модуля источника данных.Каков наилучший способ сделать это, чтобы избежать циклических зависимостей?