我在策划一个Android应用时犯了一个错误,我们决定使用Spring来开发这个项目的核心功能。当我们最终在Android上运行应用程序时,我们才发现Spring在引擎盖下使用的是CGLib,而CGLib在Android中是不支持的。
我们现在正在考虑迁移到Guice,我们想知道它是否使用了像CGLib这样的禁止性技术,可能会在Android上惨遭失败。除了方便的Android类之外,还有什么理由使用RoboGuice吗?- 还是这个库经过特殊修改,所以可以在Android上工作?
我们完全知道Guice的额外内存占用。
干杯。
Android有自己强大的依赖注入库,叫做 Dagger2
这有点像安卓系统的Guice后裔)。它是谷歌支持的,网上有大量的指南和支持的社区。
此外,我建议你使用 Kotlin 对于新鲜的安卓项目来说,因为它是一个前沿,而java项目目前被认为是传统的。此外,它还有一些轻量级的DI框架,如 科因 或 Kodein 专为Android打造。
关于Guice - 它是一个企业框架 - 使用它将是一个巨大的矫枉过正,通常不推荐使用,因为在时间上支持成本可能是完全疯狂的,由于高学习曲线,进一步的开发人员,将是项目的工作,生产力问题(Android是容易出现错误的内存)和缺乏教程和故障排除技术,因为它是不怎么使用基本上在开源的地方。
关于RoboGuice--它是一个很好的android的封装器,你应该使用它......如果你在2012年它还在火的时候。从2016年开始 已被废弃,不再支持。最后一次有意义的提交是在2014年。
据我所知,你是一个想从android开始的Java开发者。有时在android开发中使用javaee中熟悉的工具是有意义的,但使用android专用的东西是比较明智的。
希望对你有所帮助。