Tools and libraries Android programmers should know about, even if they don't use them.
- Robolectric: A testing framework that provides much more functionality than Android's stock testing support and does not require an attached device.
- AssertJ Android: Provides an intuitive fluent-style assertion syntax for Android (formerly FEST Android).
- Espresso: A UI unit testing framework. Provides an API to interact with and assert things about UI elements. Supported by Google.
- deckard-gradle: Sample project demonstrating how to use Robolectric to test and Gradle to build.
- SQLite Asset Helper: Simplifies the process of shipping with and updating SQLite databases.
- Robospice: Attempts to simplify the process of dealing with async tasks and network requests.
- Android Async HTTP: Simplifies network requests by abstracting away direct interactions with the apache http client.
- Gradle Build System: The site for the Gradle build system, including usage and release notes.
- Android Annotations: Heavy use of annotations in an effort to make code more readable and maintainable by abstracting away some complexities of Android development.
- Butter Knife: Uses annotations to inject and manage views.
- AppIntro: Create intros to your app.
- Material-Icon-Lib: A repository of material design icons featuring strong integration with Android Studio.