A quick tip to fix AssertionError Exception when updating ConstraintLayout from 1.0.2 to later versions. This article is part of Today I Learned series and was originally posted at my TIL Github Repository and my website at wajahatkarim.com These days, I am working on an android app with very old code base. So, as I am adding new functionality and fixing bugs, I am improving the code base with latest APIs.

Continue reading

Kotlin Extensions for simpler, easier and fun way of launching Activities in Android Reposted on my Medium profile. Few days ago, I was reading this awesome article by Elye about a Kotlin keyword reified . Soon after reading the article, I started exploring it and I realized that we can simply lots of reusable tasks of Android development using reified and Kotlin extension methods. For example, launching Activities.

Continue reading

Learn how I managed to reduce my Hugo website’s storage size from 437.8 MB to 4.1 MB on Firebase Hosting. This article is part of Today I Learned series and was originally posted at my TIL Github Repository and my website at wajahatkarim.com Last year in April 2018, I migrated my this website from Wordpress to Hugo, a static website generator framework built-on Go language. I was paying $5 per month through Mochahost for the hosting server space for Wordpress site.

Continue reading

A very quick and effective trick to boost Android Studio As an android developer, we get to spend a huge chunk of our time on Android Studio, the Google’s official compiler for developing native Android apps. Over the years, it has evolved into a very powerful IDE with lots of features and functionalities. But there are still some problems, which hasn’t been fixed yet for a lots of developers due to various reasons such as Gradle build time, Android Studio speed etc.

Continue reading

In my current project at work, I had a task to add run time permissions in an android app whose code is very old and using legacy methods and frameworks/tools. Normally, I use Ted Permissions in all my apps for the runtime permissions and I must say that it’s one hell of an amazing library I ever saw and given the complex scenario and flow of runtime permissions in Android (thanks to Google who always makes sure to make every thing more complicated than ever), this library makes the runtime permissions like a breeze.

Continue reading

Today, when I was working on a project, so I had a situation where I had to perform a very tiny operation in background in Android. I had lots of ideas such as AsyncTask or Thread or using such powerful framework like RxJava or using new APIs such as JobDispatcher or WorkManager etc. You can read about these options in this good article by Ali Muzaffar. But my major concern was that my requirement was a very simple and little one.

Continue reading

Today, I had a huge Json in my app and I wanted to fetch all these values in a general way. I also wanted to parse Json for only one time to avoid try/catch each time I access any value. So, first thing I had in mind was to convert the JSONObject in the HashMap or Map<> etc. So if you are using Gson in your apps for json mapping, then you can use this one line code for conversion.

Continue reading

Author's picture

Wajahat Karim

Android Developer. Open Source Contributor. Writer. Speaker

Senior Android Developer

Karachi, Pakistan