【发布时间】:2018-09-12 13:15:48
【问题描述】:
我有一个项目遵循清洁架构设计原则,并提出改造请求(在我的远程数据层中,由在本地和远程数据源之间切换的存储库层调用)。
一切都是最好的,但我的新功能之一是使我的 Retrofit 请求的 baseUrl 动态化,基本 url 来自网络上的发现。 发现完成后,选择的源服务器 url 将被存储,并且应该在用户请求新发现之前一直使用。
我已经看到我可以通过不同的方式(使用 OkHttp 或 @Url 参数)使 baseUrl 动态化,但是我应该如何“干净地”将它一劳永逸地传递给我的远程类?它甚至应该存储一次,还是应该在每个请求中传递(uck)? 我应该结合 Usecases 来首先获取我的 baseurl,然后将它传递给每个请求的存储库(uck uck)吗?
我也在使用 Dagger2,我的项目大致基于这个样板:https://github.com/bufferapp/android-clean-architecture-boilerplate
【问题讨论】:
标签: android retrofit2 dagger-2 clean-architecture