我正在为其他人编写一个即时应用程序以学习如何编写一个即时应用程序,并希望获得一些关于如何最好地为依赖项构建应用程序的想法。
现在阅读有关项目结构的 Android 开发者文档并参考下图:
我想知道新的gradle 3.0 依赖配置,哪些库应该存在于哪些模块中?
基本特征
我在想基本功能模块中的几乎所有东西都应该使用api
gradle 配置,因为基本功能模块本质上会编译成 AAR 库文件。我可能对这个模块有一个问题,如果要使用 ROOM,这将是放置它的模块吗?
特征
现在在功能模块中,我的理解是一切都应该使用implementation
gradle 配置,因为这些模块不应该将依赖关系泄漏到任何其他模块,以便真正使它们彼此独立。
只是想对我的理解进行一些确认,以及对项目有帮助的任何想法。如果你想查看我目前得到的代码,这里是 github repo。目前真的很简单,但我正在考虑使用 Retrofit 来搞乱星球大战 API。
感谢您提供的任何帮助,如果您想尝试自己提出拉取请求以获取其他人应该知道的即时应用程序的任何其他概念,请感谢您的帮助并乐意接受任何贡献。