android

Kapsule — Minimalist Dependency Injection for Kotlin

Introductory articles are all the same: here's the new shiny (used as a noun), it's really cool, please use it. Admittedly, this post is about my new library called Kapsule, but I want to first discuss the state of dependency injection in Kotlin and hence explain what drove me to create this library.

Enforcing Super Calls in Android

When writing libraries in Java, it's not uncommon to create an abstract class with some basic functionality that the user would extend. But how do you ensure that the overridden methods call through to super?

Kotlin, the Pragmatic Language For Android

Kotlin, a relatively new programming language running on the JVM, has been making headlines as the more elegant alternative to Java in any of its applications. One of them is Android development and this talk will explore the benefits that the language offers for everyday coding.

Kotlin, a Year on

Revisit of last year's talk about Kotlin and its application in Android development.Summary of the changes that took place since then, new features and feasibility for production usage as it stands.

Drawing an Animated Timer in Android

Canvas drawing in Android can be an enormous topic to grasp, so setting yourself small achievable (albeit not practically useful) goals can be a great way to isolate things that you're missing. Hence, this article will demonstrate how to draw and animate a simple countdown timer.

Androidness is a Virtue

App design can be evaluated on various merits: ease of use, brand adherence, even simple attractiveness. What often gets ignored is the platform consistency — iOS designs being ported to Android with zero changes.

Drawables in Null-Safe Models

Storing an image inside of a model is as common as can be, however if that picture can take on local and remote guises, you may find yourself repeating the same conditional statements each time you display it, thus cluttering up your view logic. This article will describe a possible solution using a DrawableSource pattern relying on the "never return null" principle.

Code Coverage on Android with JaCoCo

Many articles have been written on code coverage since the feature was introduced to Android in vesion 0.10.0 of the Gradle plugin — I have no illusions about that. However, what frustrates me is having to look through several of them and even some Gradle documentation before you can get a full working solution. So here goes another article in an attempt to remedy that and save you time.

Dagger 2: Even Sharper, Less Square

It was only a matter of time before version 2.0 of the well-known dependency injection library Dagger hit production and that seemed like a good reason to write an article about it. But first we'll spend some time looking at the original Dagger.