Hay que reconocer que fue Apple quien puso de moda y supo crear la necesidad de las tiendas de aplicaciones como su App Store, Google Play (antes Market), Amazon App Store y todas las que han nacido como setas, legales o ilegales. Apple lanzo el iPhone en 2007, pero entonces no contaba con la tienda de aplicaciones. La App Store no apareció hasta mediados de 2008, año y medio después del lanzamiento de iPhone original y dos meses antes del lanzamiento del primer Android (que ya llevaba 3 años cociendose y apareció con Market de serie).
Lo mejor sería desarrollar para las dos, pero si hay que escoger, habría que tener en cuenta estos puntos:
Si desarrollas para iOS…
Los iPhones y los iPads usan iOS, un sistema operativo cerrado. Para instalar una aplicación en ellos (de forma legal) tiene que ser a través de su App Store. Eso significa que si Apple cree que tu aplicación no tiene un diseño a la altura no se publicará (esto nos pasó con Hydrotool), si tiene contenido para adultos o poco adecuado para menores, no se publicará. Así que la aplicación que puede haber costado semanas o meses de desarrollo no va ni oler ningún dispositivo de Apple, porque en sus dispositivos no puedes instalar lo que tú quieras, sino lo que ellos te permitan.
Sin embargo, lo cierto es que si tu aplicación es un Angry Birds, un piano virtual o algo que ellos acepten no tendrás problemas, de hecho tendrás acceso al 23% aprox. de la cuota mundial de Smartphones (fuente: Xatakandroid). No es poco, pero ahí se acaba todo.
Si desarrollas para Android…
Si desarrollas para Android, no podrás pasar con según qué contenidos por su Play Store, que es mucho más permisiva que la de Apple, pero tampoco podrás pasar con contenido para adultos por ejemplo. La diferencia con iOS es que no tienes por qué pasar por su plataforma de distribución, puedes encargarte tú mismo de esto o pasar por otras tiendas de aplicaciones (que las hay a patadas, y algunas pensadas para contenido adulto). Es decir, que si quieres hacer una aplicación para adultos, olvidate de los dispositivos de Apple y de la plataforma de distribución de Google, sólo te queda encargarte tú mismo de la distribución y desarrollar para Android.
Según IDC, Apple tiene el 23% de la cuota de mercado de smartphones y Android el 59%.
Si desarrollas para Android no optas sólo a smartphones y tabletas, optas a cualquier dispositivo; una TV, un Raspberry-Pi, una cámara de fotos y lo que queda por venir, a mediados de verano se presentarán las gafas de Google, también optarás a desarrollar para ellas. Incluso, en el reciénte MWC 2013 se presentó un bastón con Android que no creo que interese mucho, pero también funciona con Android.
Los usuarios de Android no pagan
Pues no sé, yo sí pago las aplicaciones que me bajo. Aunque también es cierto que no creo que sea el usuario medio y que uso pocas aplicaciones. La verdad es que no me importa pagar 1,49€, por ejemplo, por un equalizador que voy a usar cada día, al menos hasta que Android lo lleve integrado como algunas de sus branches. Siempre he pensado que es un poco triste perder el tiempo por ahorrarte un euro, cuando te has gastado mucho más (300€? 400€?) en un dispositivo.
Si usas windows y quieres desarrollar para iOS
Tendrás que comprarte un Mac con OS X, no podrás programar desde ningún otro sistema. Para Android se programa normalmente con Eclipse, una aplicación gratuíta, multiplataforma y también de código libre.
Lo mejor es desarrollarlas con Phonegap / Cordova y que sea HTML5.
No. No conozco ninguna aplicación que merezca la pena hecha así. He gastado meses desarrollando algo, intentando que quedase ligeramente aceptable y optimizado, y con el paso del tiempo y la frustración sea acabó desarrollando en un tercio del tiempo en código nativo (iOS). Por mi parte, prefiero aprender a desarrollar para iPhone con Objective-c que hacer algo con HTML. Creo que cada lenguaje tiene su lugar muy bien definido y que las webs no sensibles al dispositivo son un atraso, pero no creo que haya que confundir las bondades de una aplicación nativa y una web embebida. Aunque creo que los Webworkers de Blackberry funcionan de otra forma y sí puede valer la pena, pero Blackberry está completamente fuera de juego y durante al menos un par de años seguirá sin jugar.