(I have since read through this post, it was posted late at night, rushed together and you can tell. It is poorly written, full of mistakes with no real structure. I can't be bothered fixing it.)
I have been on the iPhone for a few years now, I liked much of what it was. A refined, careful, considerate and polished device, both in hardware and software. However, competition soon came in the form of Android. It had all these features that gave developers and users a lot of power and influence over the host system, but it was ugly, inconsistent, often slow, and the application market was horrible.
At the time, I was happy with the restrictions Apple put in place because they still offered the greater experience. It had a nice interface, it was impossibly smooth and quick, and you didn’t need to worry about much. iOS updates have been iterative over the past few years, fair enough I think, it was the operating system that started this revolution, it was the one to beat. But during this time, we have seen competitors make the realisation that the user experience has to be the top priority.
Google slowly made changes and began to polish up Android, but it wasn’t really going anywhere. Google hired Matias Duarte who had previously been responsible for User experience style roles in Palm on WebOS and it all changed. Matias worked on the new tablet experience in Android 3.0, but I didn’t really take notice until Android 4.0, which aimed not only to merge the tablet and phone code base, but to deliver a vastly improved user experience by going through the entire operating system and essentially redesigning it.
It didn’t throw out any of the core Android concepts, but it did introduce many new UI concepts and a gorgeous new design language. Android 4.0 looked properly pretty in so many ways, and at a time when I was getting bored with iOS and its general lack of progress in user experience and at the same time I felt Apple started to take a few steps back in design aesthetics with its tacky textures, and overall obsession with making computer software look like its real-life counterparts.
Android 4.0 made me seriously consider switching, but at this point we had no idea what iOS6 was to bring, so I waited. I shouldn’t have. It was a really limp update, mostly minor changes, few aesthetic changes, and crucially - no more flexibility for applications, pretty much the deal breaker.
Shortly after iOS6, Google announced Android 4.1 Jelly Bean, and perhaps my final big problem with Android (the operating system, ignoring ecosystem) had been solved, lack of UI smoothness. Project Butter smoothed out the interface, improved touch response, the operating system now renders the UI at a smooth triple buffered vsync (typically 60fps, but refresh rate varies).
But, I still hesitated. I didn’t want to leave that great app ecosystem on the iPhone, but did it still have such a big advantage? Android holds the larger market share, it has a massive development base and the focus of all the big developers, support was there. But was the quality?
It turns out, surprisingly, yes. It just isn’t as easy to find thanks to the lack of a curated app store. But with Android 4.0 came more than just a system update, but a new design language and guidelines that developers could use, and target, they had the hard work done for them - follow the principles and you should be able to make a great looking application.
The baseline level of quality still isn’t up to iOS standards, there is a lot of shit on Android, and it doesn’t do enough to discourage that shit, not yet.
I have found my replacements, I have found some even better applications than the ones I was using on iOS, and part of that is because of the freedom developers have on Android. Applications can interact with each other, they can integrate themselves seamlessly into the operating system and they can add functionality without you having to jump in between sandboxed applications.
It is a very smart operating system, and from a developers perspective, it seems to be a much friendlier system than iOS. Yeah, the tools are not as polished or well supported as Apple’s, Xcode and the suite of tools they provide to develop with are great, far beyond what Google are providing (A plugin for existing Java IDEs and a pretty poor UI builder). But whilst I’m talking about the tools, Google do provide a better environment on your phone for development, great development options and the ability to test and deploy to your device without having to pay £60 a year to Apple for that privilege.
However, my overall point with this post is that I feel Android has caught up and eclipsed iOS in most ways. Google have recognised what iOS does great and has kept all what Android did great earlier on. Google have proven you can give developers the freedom whilst protecting the security and user experience of the core operating system, something Apple refuse to do.
Because I see the question a lot “What can Android apps do what iOS apps can’t?” I’ll provide a list:
- Android applications can “broadcast” functionality to the operating system. Your application can deal with web pages? Can deal with a music file? And images? Can be used to share information? Then it’ll show up in applications that are relevant in the ‘share’ menu. You don’t need to wait for Apple to integrate these services like Facebook into the OS. Such integration was available in Android as soon as the Facebook released it.
- Android applications can be triggered in the background, and can work properly in the background. They can work completely headless (no GUI), perform functions on data and feed the results back to you (via notifications, and such). For example, an imgur application, I don’t need to open up the app to upload images to the services via the application, I send the images from the app I am already in to the application, it does its thing in the background and I can continue what I was doing.
- You can set applications as defaults for certain tasks. Want a new browser? Fine, you can have Android work that out for you. Want to change your phone application? You can do that too. Oh, you’re clicking a Wikipedia link, you have the Wikipedia app installed, want to open it in that or continue with the browser? The assumption on iOS is that only Apple can do the best, and because of that assumption Apple don’t allow anyone else to even try.
- Sandboxed intelligently. Applications are sandboxed, they are protected from other apps and the OS. But developers can expose functionality to other apps and the OS, and can integrate themselves into the OS, they can write to a shared storage location and all apps can dip into that shared storage location.
- Multitasking - despite popular belief, a full application doesn’t continually run in the background on Android. Developers will only have a very specific process continue running if the user wants it to do so, and an nonremovable notification will typically be presented in the notification tray at all times while that process is running so that the user isn’t left unaware. Applications can trigger themselves when certain events happen, or on a schedule, you don’t need to, for example open up and manually update your podcasts - your phone will do that regularly whenever you set it to.
My biggest complaint with Android is the lack of good hardware makers. Apple make absolutely superb hardware, and i’d love to have that hardware. But I can’t. If it is a choice between great hardware or great software, i’ll choose the great software every day. Hardware is 25% of what makes a good smartphone, as long as the hardware is good enough, then the software more than makes up for it.
I haven’t completely left the iOS ecosystem, I am still faithful to the iPad as I believe it is still the best tablet for one reason: third-party applications. The software available for the iPad is far beyond anything on competing tablets. But that could change one day. I don’t expect many, if anyone to read this - but if you have made it this far, then I apologise. I have read it through and it is very poorly written. Lacking structure and any real coherent point, but I’ll publish it anyway. This blog is for this sort of stuff, my messy ramblings.