Android Learning Resources - Plastix/Forage GitHub Wiki
https://github.com/Plastix/Android-Learning-Resources!
An up to date list has moved here:Here is a list of learning resources that I used while developing Forage. I owe a lot to the /r/androiddev subreddit because it introduced me to clean architectures (MVP) and modern Android frameworks such as Retrofit and RxJava.
General Android Reference
- Google’s Android Developer Reference
- Google's Android Codelabs
- Codepath Android Guides
- Futrice’s Best Practices for Android
- Ribot’s Android Guidelines
- Android Developer Subreddit
Awesome Blogs
- Google Developer's on Medium
- Jake Wharton's Blog
- Jesse Wilson's Blog
- Fernando Cejas's Blog
- Artem Zinnatullin's Blog
- Hannes Dorfman's Blog
- Konstantin Mikheev's Blog
- Ribot Labs
- Novoda Labs
- Dan Lew's Blog
- Antonio Levia's Blog
- Chris Bane's Blog
- Daniele Altomare's Blog
- Luis G. Valle's Blog
- Rebecca Franks' Blog
- Michael Evan's Blog
- Saúl Molinero's Blog
Podcasts
Specific Topics
MVP Architecture
- Architecting Android…The clean way?
- Architecting Android…The evolution
- Introduction to Model View Presenter on Android
- Android Application Architecture
- Refactoring Plaid App - A Reactive MVP Approach (Part 1)
- Android MVP, Retrofit & Rx
Functional Reactive Programming
- ReactiveX Official Documentation
- Grokking RxJava, Part 1: The Basics
- Grokking RxJava, Part 3: Reactive with Benefits
- Grokking RxJava, Part 2: Operator, Operator
- Grokking RxJava, Part 4: Reactive Android
- RxJava magic (finally) goes away
- The Reactive Revolution: RxAndroid and how it finally clicked for me (part 1 of 2)
- The Reactive Revolution: RxAndroid and how it finally clicked for me (part 2 of 2)
- Building Yahnac’s Rx Pipeline
- RxJava - Handling Configuration Changes With Request Observables
- The introduction to Reactive Programming you've been missing (In JavaScript but still helpful)
RxJava Talks
- Functional Reactive Programming with RxJava • Ben Christensen
- RxJava for Android Developers
- Learn you some Rx for the greater good
- Learning RxJava (for Android) by example
- Functional Reactive Programming in Java
- Get Reactive
Dependency Injection
- Dagger 2 Official Documentation
- Dependency injection with Dagger 2 - the API
- Dependency Injection with Dagger 2
- Tasting Dagger 2 on Android
- Dagger 2 Dependency Injection for Android Developers
- Making a Best Practice App #4 — Dagger 2
- Component Dependency vs Submodules in Dagger 2
- Dagger 2 and Base Classes — Generics and Presenter injection
Dagger 2 Talks
- DAGGER 2 - A New Type of dependency injection
- The Future of Dependency Injection with Dagger 2
- MCE^3 - Gregory Kick - Dagger 2 (2016)
Android UI
- Exploring the new Android Design Support Library
- Exploring Meaningful Motion on Android
- Mastering the Coordinator Layout
- Material Design Tabs with Android Design Support Library
- Making Android Toolbar responsive
Open Source Sample Applications
Android Architecture Demos
- https://github.com/android10/Android-CleanArchitecture
- https://github.com/pedrovgs/EffectiveAndroidUI
- https://github.com/JorgeCastilloPrz/EasyMVP
- https://github.com/antoniolg/androidmvp
- https://github.com/ppicas/android-clean-architecture-mvp
- https://github.com/grandstaish/hello-mvp
- https://github.com/hitherejoe/MVVM_Hacker_News (MVVM not MVP!)
Open Source Library Demos (Dagger, Retrofit, Rx, etc..)
- https://github.com/JakeWharton/u2020
- https://github.com/saulmm/Avengers
- https://github.com/kaushikgopal/RxJava-Android-Samples
- https://github.com/zsiegel/rx-mvp-android
- https://github.com/esoxjem/MovieGuide
- https://github.com/pomopomo/WearPomodoro
- https://github.com/ekchang/SwipeRight
Android UI Demos
- https://github.com/nickbutcher/plaid
- https://github.com/byoutline/kickmaterial
- https://github.com/ccrama/Slide
- https://github.com/lgvalle/Material-Animations
Android Performance
- Android Performance Patterns - Android Developers Youtube Channel
- Performance Tuning On Android
- Analyzing UI Performance with Systrace
- Simplify Complex View Hierarchies
- Fixing Memory Leaks in Android – OutOfMemoryError
- Detect and Resolve Performance Problems on Android
Android Books
Misc Android
- Advocating Against Android Fragments
- Droidcon NYC 2015 Talks
- Advancing Android Development with Kotlin