Android Development Is A Mess |
Written by Mike James | |||
Wednesday, 18 June 2025 | |||
I've been saying that Android development is a mess for a few years and as a result I don't write about it anymore, but I do still suffer the actual task. Now I seem to have some backup for my position in the form of an ex-Android-Googler. Ashish Bhatia is an ex-Google engineer responsible for Android security and now develops Android apps among other wide-ranging things. In a recent blog post, Maintaining an Android app is a lot of work, he points out many of the things that are frustrating if you are an Android programmer, especially if you are a Java programmer. I'm happy with Kotlin, in fact I prefer it, but I can see the Java point of view and it is just another example of the fact that the Android project has no understanding of its purpose or its user base. Well before many of the things that Bhatia lists, the Android SDK lacked focus. Back in the day, the problem of fitting a UI into different screen sizes was supposed to be solved using fragments - does anyone use, or even remember, fragments now? Then there was the amazing Constraint Layout which provided another way of adjusting a UI to different screen sizes. And just as it looked as if we had a solution to the problem, the whole thing was torn up and Jetpack Compose was introduced. A Kotlin-only declarative UI with no easy-to-use tools such as a layout designer. We are all encouraged to use MAD - Modern Android Development - and presumably bin everything that went before. Could the Android system be any more hostile towards its programmers? At first I thought it was just a careless attitude. Android Studio updated its list of supported controls and dumped the Date and Time widget. Fine, but no one warned it was going to happen and no one offered a replacment. You could add it if you knew how, but if not you were stuck and no one answered your calls for explanation. Even today there are lots of apps that make use of the widget, but it is still missing from the official development environment. I have long held the suspicion that the Android team has no leaders with any overall vision. It just seems to be a loose gang of enthusiasts who are enthusiastic about whatever interests them without worrying about integrating with the rest of the system or, more problematic without worrying about the amount of past work they are dumping. Take toast notifications - they used to just work - now they don't unless you do a lot of new coding. Put simply, the Android system has no repect for the past and breaks things without even noticing. This not just a matter of how things look, but the constant change from Material design to Material 2 and then just as quickly Material 3, makes things difficult for no very good reason - and if you aren't using Compose and Kotlin then tough luck. You probably get the general idea and you can read many more specific compaints in Ashish Bhatia's blog post and in the Hacker News comment it provoked, but the real question is - can anything be done about it? My guess is that unless there is a major upheaval in Google, such as Android being spun off into another company with a need to slim things down and make a profit, then probably not. Android needs a boss and not a team of unherdable cats.
More InformationMaintaining an Android app is a lot of work Related ArticlesAndroid Studio Dolphin - D For Dunce? Android Studio Chipmunk - Cute But Increasingly Unfit For Purpose Android Studio Bumblebee Adds Support For ADB Over WiFi Android Studio 4.1 - No Relief In Sight Love It or Hate It, Gradle Reaches Version 7.0 Android Studio 4 - Not One Giant Leap For Android Programming To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.
Comments
or email your comment to: comments@i-programmer.info
|
|||
Last Updated ( Wednesday, 18 June 2025 ) |