Magic With MotionLayout

Ladies and gentlemen, if you have not checked out ConstraintLayout 2.0, you are missing out.  I have been playing around with it and I’m at the point of no return. Ever wanted to make cool animations? Well, it’s a walk in the park. You just need to know where the park is and how big…

Read More

Android LiveData & ViewModel

If you missed it, there were some awesome announcements about Android at Google I/O 2017. Say hello to Android Architecture Components. Architecture Components. A new collection of libraries that help you design robust, testable, and maintainable apps. Two main pain points addressed by Architecture Components are: Help manage UI components lifecycle. Persistent data during configuration changes….

Read More

Android Architecture Components Part 2 – Dependency Injection

As promised, part two is here. ? Before we get our hands dirty, let’s do a quick recap. In the previous post, we created a simple app that displays a list of user names using Android architecture components library. We divided our app into the following layers for better code responsibility and separation of concerns: View/UI layer ViewModel layer This…

Read More

RxJava + Android

In the previous post we talked about  Lambdas on Android. In this article, we are going to explore the amazing world of  Reactive Programming.  This is a combination of the best ideas from the Observer pattern, the Iterator pattern, and functional programming. Chances are you’ve heard of RxJava. RxJava is a Java VM implementation of ReactiveX (Reactive Extensions): a library…

Read More

Lambdas on Android – Part 1

This is a four part series of how to setup and user Lambda Expressions in Android. In Part 2, we’ll use Lambda expressions with RxJava. If you are tired of writing boilerplate code, then you should try out Java 8. Let’s write some code. Enabling Lambda Feature on Gradle We need to edit your build.gradle…

Read More

Android Integration Testing

If it’s not tested, don’t trust it. If you are building software, you have to test it. If it isn’t tested then I promise it will fail in some horrible way. I learnt this the hard way and trust me it wasn’t fun. Staying up late, debugging code only to find out your endpoint has…

Read More