Marshmallow Runtime Permissions

One of the most talked about features of Android 6.0 (Marshmallow) was the finer permission controls, known as ‘Runtime Permissions’. Runtime Permissions allow the user to control whether a certain app has access to confidential data such as user’s contacts. Users can also take back permissions that they’ve already granted. Continue reading Marshmallow Runtime Permissions

Picasso: A powerful image downloading and caching library for Android

This is the third instalment of my Code More Efficiently series and it is meant for Android developers who deal with loading images in their code. If you have to manage, load, display, or otherwise work with images in your app, you’d agree that the majority of the issues that you face in this area are regarding performance, memory, or both. The solution is often a 3 tier cache: memory > disk > network, but writing such a system is tedious. That’s where Picasso can only help, but excel. Continue reading Picasso: A powerful image downloading and caching library for Android

Butter Knife: View Binding Library for Android

This is the second instalment of my Code More Efficiently series and it directly targets Android programming, specifically dealing with UI and layouts. When I think Android and boilerplate, my thoughts immediately direct towards the UI elements and the ways in which they interact with each other as well as the entities hosting them, namely Activities and Fragments. Butter Knife, an open source library by Jake Wharton, allows the developer to fly past the boilerplate and focus on what matters most: The App! Continue reading Butter Knife: View Binding Library for Android

Lombok: Spice up your Java

This is the first instalment in my Code More Efficiently series. Of all the open source libraries mentioned, I believe Lombok to be the easiest to use. It is almost effortless, which makes it a good starting point. The demo code for this guide is on Github. I also have a few slides for this  guide. Continue reading Lombok: Spice up your Java