Google recently introduced the first Android-based device, paying close attention to the open source operating system. In view of the cases where some iPhone developers are writing for applications that are related to the Apple device that is caused by a restrictive NDA that prohibits them from discussing codes and therefore solves the problems together, Androind is a more attractive system for application developers? And if so, does this mean it will be an iPhone killer? In short, no. Therefore:
Android is out of date, Google has spoiled the developers' reliance. They went some way to try to fix this, but there was a lot of damage. The iPhone platform has been around for a year and the official SDK for several months, and it's upside down.
But the real problem is the handsets. In fact, the whole thing is a problem. Android is open source, which means anyone can use it and anyone (including mobile device manufacturers) can make their own changes.
So on the one hand is the iPhone, running Mac OSX (well, the iPhone OS, Same). Every copy of the iPhone OS is more or less the same (at least if you think version 2 is the iPhone OS and version 1, which currently only runs on a small part of the devices.)
The iPhone OS is currently only four hardware running devices, iPhone first generation, iPhone 2n generation (3G), iPod Touch 1st generation and iPod Touch 2nd generation. There are only four differences between the available hardware: camera (not present on the iPod), GPS (not in iPhone 1 or iPod) although location services are still supported on both wifi access, phone / mobile access (iPhone only) and 3G data (only available on iPhone 3G). You can argue about a case that is a vibrating feature, which is just the iPhone, but it is a phone-centric component that hardly justifies.
So if you want to write an iPhone application, it's relatively simple, because you know exactly what it is all about. For example, if you need access to an image, your operating system will offer you every heavy lift – so you can easily check for a camera available. If you have one, you can access it standardly if you do not have access to the built-in Photo app. Anyway, you know that you normally have access to the pictures.
If you want location-based services, you get access to all the hardware. If you may be running an iPhone 3G operating system, the operating system will provide GPS data so that the location will be more accurate, but will work on other hardware as well.
All other devices – the same screen size, resolution, languages, keyboards, accelerometers, audio devices, etc.
Compare this with your Android device. Only the hardware side could run alone on potentially hundreds of different devices. You do not know what screen size you are – can be as big as the iPhone, it can be as small as a Nokia flip phone. So how do you start managing the user interface when you do not know how much space you need to take?
Then you do not know how many colors you can support or if your device is a keyboard or not. A touch screen may or may not be. You may have a joystick or d-pad, or maybe not. So how do you allow users to connect to the app if you do not know the above?
To continue … the device can work in English, French or 100 different languages. Do not you know if there is a camera or not, and if so, what camera? What resolution? Are you doing a video? The same is true for GPS. And then what kind of voice is there? The list goes on
So only the hardware has thousands of potential combinations and will never be able to test all of them before releasing the app unless you buy any Android-based device ever to be released in the future.
But it will be worse because you remember that the handset manufacturer can also change Andoid! So you can write a code that uses the "normal" part of your operating system and then Sony releases a phone that does not actually have this part because it has removed or replaced something you wrote yourself. So the application crashes
Assuming that somehow succeeds in writing an application that is capable of adapting to any hardware configuration and takes into account the fact that it runs on an operating system that is the same as it has been developed or may need to to share in the Google App Store.
Unlike the iTunes App Store, which has acquired all the software before selling it, providing a minimum level of quality in the Google Store. Which means they will be flooded with unnecessary applications (many of them will not work for the reasons discussed earlier). Users download one or two apps, see they do not work and give up. You may never discover your artwork between junk.
Apart from that, Android is a good idea. And the mobile market needs it because Nokia has bought Symbian and is likely to kill and Windows Mobile is just terrible. So Android will stimulate competition. And if Google sees your vision, then DVD players, washing machines, and who knows what else. So this is a useful project.
But for writing and distorting applications, the iPhone OS is light for years. Apple's consumer marketing know-how is behind. Android is too technical and takes a lot of time to catch the public. After all, with the exception of iPhone users who are buying on the phone, which operating system is running?