我已经有一段时间没有开发 Android 了,我正在尝试将新功能作为 Gradle 依赖项来做正确的事情。
我想知道当您需要修改一个特定的依赖项以满足您的需要时,最佳实践是什么。
例如,假设我们有两个通过继承 Adapter 来扩展 RecyclerView 功能的库:
Adapter --> AdapterA
Adapter --> AdapterB
由于 Java 不支持多重继承,我想使两个库一起工作的唯一方法是修改其中一个,因此子类层次结构如下所示:
Adapter --> AdapterA --> AdapterB
如果我是正确的并且这是要走的路,那么修改和集成库的最佳方法是什么,这是我能想到的选项:
- 在 GitHub 上 fork 并使用 JitPack 添加 forked-modified 库
- 将库作为本地模块添加到应用程序并修改源
请证明或建议什么更好,以及是否有任何其他替代方案可以实现这一目标。