It’s Been Real, Android: Why I’m Retiring from Android
Just like the web platform, Android is hugely improved when you leverage the community libraries and tools they provided. Gradle actually helps a lot with that, since its clear dependency management makes use of external libraries a breeze.<p>If in 2016 you&#x27;re still complaining about AsyncTasks and its management, you certanly have missed a lot of progress in the last few years. It&#x27;s not unlike having people complain about JavaScript issues without ever looking at jQuery, React or newer tooling.<p>The most useful things you can do for yourself currently are:<p>* Adopt Kotlin as a language. It&#x27;s not all that different from Swift, comes with IDE support, tiny standard library and really fixes the pain of Java 6.<p>* Use MVP patterns and its friends. There are a few libraries which take most of the pain of lifecycles away.<p>* Use RxJava, Retrofit, Glide, etc. libraries that make your life easier with concurrency. A lot of these tools are better and easier to use than what even exists on iOS. Using AsyncTask in 2016 is just silly, it was never a good API.<p>* Use Gradle! Driven by its scripting language, you can do so much to script and automatize your build.<p>Other than that, I agree, after years of development:<p>* Some Android APIs just aren&#x27;t well thought out.<p>* Gradle badly needs performance improvement.<p>* State of NDK is just sad. Fixable, but sad.<p>* MultiDEX is a result of a very very dumb decision in Android 1.0 and it&#x27;s going to hurt us for a long time :&#x2F;<p>All-in-all, I honestly think the author didn&#x27;t really look into Android all that much to have complaints that he had. The blog post is somewhere on the level of someone complaining about IE6 JavaScript bugs when we&#x27;ve already moved on to React and are dealing now with very different issues.<p>(And no I&#x27;m not saying Android is great or even a great platform. It&#x27;s not. It&#x27;s just that, just like on Web, you can do a lot to fix major pains.)