
5 things I hate about Android
Moving to Android from iOS has been… ’challenging’. Here is the worst of Android.
I have just clicked ‘Publish’ in the Google Developer Console, to unleash to the world my first ever Android App. My first ever foray into Java even. And it’s not been easy, not by a long shot.
Development Environment
From the not-quite-there-yet Android Studio, to the jack-of-all-trades, master-of-none Eclipse — my biggest gripe with Android development is the development environment.
I used to complain about XCode… not anymore! Living with these subpar IDEs for the past 3 months has taught me to be grateful for just how good XCode really is. It’s fast, clear, uncluttered, reliable and dedicated to what it does. Eclipse is a cumbersome, slow and inelegant IDE at best — and yet that is what it is — the best of a bad bunch.
Fragmentation
Yes, i’m going to jump on the bandwagon here — but before I do, I want to clarify something. Android Fragmentation is nowhere near as bad as it’s made out. Now don’t get me wrong, the devices, screen sizes, densities etc are all varied and fragmented but the Android SDK does a great job of masking these differences. Layouts make the job of designing an Android application to work with this disparate device/screen size mix a very straightforward affair, as long as you’re not trying to be too fancy.
Security
Making an Android App secure is incredibly difficult, and pretty much relies on Security through Obscurity, which is never a good thing. Whilst Android ships with ProGuard, the ability to decompile and reverse engineer APKs makes hacking apps a very simple prospect. Obfuscating sensitive parts of your code may slow a determined attacker down, but it won’t stop them.
Support Libraries
This is a tough one to describe, as actually the very existence of Support Libraries is a great thing. These libraries are supposed to bring unsupported features to ageing Android OS versions so that those users stuck on old OS’s can benefit from the latest features.
I’ve found it difficult to follow how and when to use these support libraries, and the implementation of support methods tends to vary from their namesake counterparts in subtle (and often buggy) ways.
Email me when Technology & Development publishes stories
