RoboSpice is a modular android library that makes writing asynchronous network requests easy !
To learn more about RoboSpice in 30 seconds, try [this infographics] (https://raw.github.com/octo-online/robospice/master/gfx/RoboSpice-InfoGraphics.png).
If you want to start using RoboSpice right now, jump to the Wiki or the samples.
- supports Android starting from SDK version 8 (Froyo / 2.2.x)
- executes network requests asynchronously (in a background AndroidService)
- supports REST out of the box (using Spring Android or Google Http Client or Retrofit).
- is strongly typed ! You query webservices using POJOs and you get POJOs as request results.
- enforces no constraints neither on POJOs used for requests nor on Activity classes you use in your projects
- caches results in Json with both Jackson or Jackson2 or Gson, or Xml, or flat text files, or binary files, even using ORM Lite (still in beta)
- notifies your activities (or any other context) of the result of the network request with respect to their lifecycles.
- no memory leaks at all, like Android Loaders, unlike Android AsyncTasks
- notifies your activities on their UI Thread
- uses a simple but robust exception handling model
- supports multi-threading of request executions
- supports aggregation of different web services
- is a full featured replacement for long running AsyncTasks even they are not related to networking.
- is open source ;)
- and tested (more than 160 tests)
RoboSpice is under Continuous Integration on a Travis server Thanks to Travis.
RoboSpice is under Quality control on Sonar's Nemo instance. Thanks to Sonar Source.
To learn more, look at the presentation slides we created for DroidCon UK 2012, they are available in the download section.
A few links :
- Browse RoboSpice's full documentation on the Wiki.
- Javadocs.
- Maven site.
- Discussion group on google.
- Stack Over Flow questions about RoboSpice
The RoboSpice team proposes a lot of sample applications in their own GitHub repo.
We also propose a few demo :
- RoboSpice Motivations : a pedagogical app that explains the motivations behind RoboSpice.
- and [a demo that illustrates non-network related requests (offline)](](https://play.google.com/store/apps/details?id=com.octo.android.robospice.sample.offline#?t=W251bGwsMSwxLDIxMiwiY29tLm9jdG8uYW5kcm9pZC5yb2Jvc3BpY2Uuc2FtcGxlLm9mZmxpbmUiXQ..).
RoboSpice has been incubated at Octo Technology, a french company based in Paris, focused on software design and quality. It offers its employees to work part time on Research & Development projects. RoboSpice was one of them.
RoboSpice has been featured in
- Android dev weekly mailing list, issue 31.
- Android weekly mailing list, issue 44.
- An article of Geeek.org
RoboSpice has been presented at :
- DroidCon London, October 2012
- Nantes GDG Dev Fest, France, November 2012
- Paris Android User Group, November 2012
- DroidCon Amsterdam, November 2012
RoboSpice video at DroidConLondon
Robospice presentation by David Stemmer
Copyright (C) 2012 Octo Technology (http://www.octo.com)
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.