Dave Smith, of Wires are Obsolete, is an Android and iOS application developer with his own take on how Apple closed the gap between available features in Android and iOS with the release of iOS 5. But there are six key areas where he believes Android has an advantage over Apple in terms of how developers create applications for the mobile operating systems, and he described how Apple has made some changes to help developers in the iOS 5 release.

1. More software categories
Android Market allows developers to distribute (and monetize) more than just traditional apps. Live wallpapers, home-screen widgets, and tools to customize the look and feel of the device are some of the most popular downloads in Android Market today. In fact, these are the types of products on Android Market that often make developers the most money.

Has Apple helped with this in iOS 5?
None of these opportunities exist on iOS at the current time, and iOS 5 hasn’t really expanded the SDK to encompass this. Unfortunately, home-screen widgets and the new iOS notification system aren’t equivalent because I as a developer cannot write software to create a custom widget to live in the iOS 5 notification bar.

I just don’t see device customization as a priority for Apple; it’s not part of their brand. I wouldn’t expect to see them add abilities for developers to write customization software anytime soon. There’s a core value difference here between Apple and Google.

2. Android is open source
This one always gets lots of fun debate going, but after developing on both platforms for a few years, I can tell you there has been more than one occasion where something isn’t working right and I’ve wanted to go beyond the documentation to see how they implemented a certain object in the SDK.

With Android, I can go straight to the public source code and see exactly how it was implemented. Then, if I need to create something custom, I can almost always use that code as a starting point. The Android documentation even links directly to the source code for every class in the SDK, so it’s not even hard to find what you need in the source—you don’t have to search the entire tree.

Has Apple helped with this in iOS 5?
iOS will never be open source.

3. Background services
On the Android platform, developers can create full background-service implementations that are unrestricted by the framework. This can often spark pushback from users claiming that this unrestricted access causes poor performance on their devices, but with proper implementation, background services greatly enhance the user experience by allowing them to do long-running operations without having to keep the application open.