5 ms·
Anyone complaining about Android fragmentation should ask themselves if they would prefer if every device would go the "Apple way" and make their very own opera
by bookwormAT 13y ago
Anyone complaining about Android fragmentation should ask themselves if they would prefer if every device would go the "Apple way" and make their very own operating systems for their device. Would this really solve fragmentation?
Here is how I see the "Fragmentation issue": My customers are using one of maybe 800 or so different devices, with maybe 100 different software systems powering them. That number was about the same before and after Android came about.
Now if I want to write a program for all my customers, I need to theoretically write at least a hundred different applications. That sucks. But today, thanks to Android, like 95 of the available operating systems are based on the same development kit, Android, and so instead of writing 95 different applications, I make one and then adapt a little if necessary.
Android is a defragmentation platform. What we call "Android fragmentation" just means that the defragmentation works 90%, not 100%. People can use Android to build lot's of different operating systems, which are either very similar or very different that what is available in the Android open source project. But because it's all based on the same code base and runs against the same compatibility test suite, a developer like me can target many devices and many operating systems with a single code base. That's awesome.
iOS and Windows are fragmenting the market for me. They are not compatible with Android, so I have to write a separate application for these systems. Often from scratch.
A few notes to further explain this position:
"operating system" is a very generic expression. For most people today an operating system is the software that is installed on the device minus applications that the user installed himself.
E.g. the app store, itunes, Location Services, the User Interface and the push notifications system are considered features of the iOS operating system. But on Android based devices there are independent from the Android system. You can make your app run Holo no matter what Android version is installed on your customer's device.
When speaking in iOS terms, you can say that 90% of all Android devices get updated once per months or so, when another update for Gmail, Google Voice Search or GCM arrived.
You do not need to depend on Google if don't want to make your software compatible with Android. There is no dependency from Google in Android, all their influence comes from the fact that they own the most popular third party app suite that every OEM wants to license on their device. If and OEM wants to go their own way, like Amazon, Google has no way to stop them.
- wklauss 13y agoThere are tradeoffs in every approach and there are steps Google could have taken to make the situation better without mimicking the controlled experience and uniformity of iOS. Unfortunately at this point this is pretty much how it's going to be. So yeah, it's a "pick your poison" kind of world and theres no easy way out. You deal with it and hope for the best. But that doesn't mean it's not worth pointing it out or that is not a problem for the Android ecosystem in the long run. > iOS and Windows are fragmenting the market for me. They are not compatible with Android... By that same logic Android is fragmenting it too. > When speaking in iOS terms, you can say that 90% of all Android devices get updated once per months or so, when another update for Gmail, Google Voice Search or GCM arrived. No, as a developer having users in different versions of Android affects the things your app can do. What APIs does it have access to and how. I don't care if the user thinks he's updated because their gmail app looks new. I care that my app needs more hours of coding to make sure it does the same on Android 2.3 than on 4.1. > ... You can make your app run Holo no matter what Android version is installed on your customer's device. There are some iOS developers that follow this same route. A lot of services / functions in iOS are not mandatory, you can use your own versions of it if you want to devote the time and skill to rewrite them. Loren Brichter comes to mind as a good example of this. Developers use the Apple route because it's easy and takes out a lot of the workload.
- bookwormAT 13y ago"By that same logic Android is fragmenting it too." How? Android is an open cross platform technology for building operating systems that are app-compatible with each other. How is that fragmenting? "No, as a developer having users in different versions of Android affects the things your app can do." This is correct, but not in the sense that an older version of an operating system (in the iOS sense of the word) would. New developer features of ios7 are a new user interface, better location services, background push notifications etc. All of these things are available on android-based systems as well, but none of these things depend on the Android version. I admit that there are also APIs that are part of Android, and therefore only available in newer versions. And so an OS that is based on Android 4.0 can not run every app that is made for an OS based on Android 4.3. But if you need to target all 800 devices that your customers use in the end, the iPhone turns out to be much different from an Android 4.0 device than Android 4.3. And that's the point: You need to develop for all these devices anyway. So think about effort per device, not effort per platform.