Reputation: 3016
I am writing a android application which requires dependency injection in the data access API the application will need (I am implementing this API). I don't want to write the dependency injection manually. Therefore, I was thinking of using Spring. I realize that there are two versions of spring. A regular version and a android version. Can the regular version be used in the android application cause I just want the dependency injection functionality and already have the files.
Upvotes: 14
Views: 18706
Reputation: 697
If you need DI and Spring, please give RoboSpring a try. I have ported the Spring Framework to Android and tweaked the performance significantly! From the description:
RoboSpring is a (real) port of the Spring Framework to the Android platform. Additionally it offers preliminary support for functionality introduced by RoboGuice like injecting View references into Activities and more. RoboSpring is based on version 3.1.0 RELEASE of Spring's core, beans, context and aop components. It offers the following functionality:
Please see here: https://github.com/dthommes/RoboSpring
Upvotes: 9
Reputation: 3004
Spring has libraries for android but its for efficiently doing REST communication with some OAuth the detailed information is available here spring-android and the developers of spring advocate using RoboGuice for DI you can read about it from here, for hardcore dependency injection its RoboGuice which is by far the best out there.
Upvotes: 1
Reputation: 4346
If you need the dependency injection only. You may choose some lightweight framework like google guice.
Upvotes: 2
Reputation: 52936
Don't. Spring is a heavy weight server-side framework that is not optimized for Android. The have some Android libraries, but those are for specific things like REST. If you need DI, use an Android framework such as RoboGuice.
Upvotes: 18