mikeydangerousmwcu, on 14 May 2012 - 05:39 PM, said:
Speaking of Apple, they don't charge twice for the same apps. Both Android and iOS offer universal apps (apps that are supposed to work for both phones and tablets), but there's a key difference between the two: On iOS, you download one file that has both versions while on Android your request is sent to a server which recognizes which device you are trying to download the app from, and sends you the appropriate APK. It wasn't until ICs (which is pretty much on nothing these days) that developers were able to create apps that scaled to a variety of screen sizes. The lack of apps is caused by three things: The SDK being a huge pain to work with, having too many devices with tons of different specs and OSs, and the fact that people aren't buying apps.
Sure developers can be lazy, but if you have to test an app to make sure it works across nearly a different Android devices--then you aren't exactly making it the most appealing platform for smaller development teams that don't have the resources to do that.
Actually, it's pretty much the other way around. Support for multiple screen sizes was there early on, in Android 1.5/1.6. The ability to target certain devices with an apk has only come about relatively recently. What was improved as of honeycomb(3.0) was support for tablet sized devices via
fragments which continued on into ICS.
Android has always been good at scaling to multiple displays. It's iOS that had to target specific devices (tablet vs phone) since they hadn't built the sdk with that in mind whereas Android had to right from the beginning, since they were looking to be on many devices.
People seem to be coming out with the myth that it's harder to code for Android than it is for iOS. That's certainly not true at all. Creating an app for Android isn't inherently more difficult. Testing is, of course, a challenge but if you're looking to get into the ecosystem, it's something you'll have to put up with - the number of devices coming out is ever increasing, not decreasing.