Hayqueverlo - dispositivos móvilesLa diferencia entre el rendimiento iOS de Apple y Android de Google, es que el primero utiliza Objective-C, de manera que los programas se compilan especialmente para el procesador de los iPhone. En cambio Android optó por usar Java junto a librerías SDK, por lo que las aplicaciones no se compilan y son independientes del tipo de procesador utilizado. Esto provoca que Android haga trabajar más el procesador. Para profundizar en el tema Ricardo Galli escribió este interesante artículo en su blog. Con Windows Mobile sucede algo parecido a Android, pues se utiliza Visual Studio entre otras herramientas de desarrollo.

Por ahora cara a un desarrollador independiente de aplicaciones, és muy importante que sus aplicaciones puedan ser compatibles con la mayor cantidad de sistemas operativos que existan. No se trata de apostar por un solo caballo ganador, pues no siempre ganará el mismo y siempre habran distintos sistemas operativos. No os dejéis engañar con los comentarios de los fans de una marca o otra.

PhoneGap,  permite desarrollar aplicaciones usando tecnologías web como HTML5, CSS y JavaScript. En cuanto a efectos visuales puede utilizar librerías de JavaScript como jQTouch, y es capaz de convertir esas aplicaciones web en aplicaciones nativas para Android.También existe el entorno de desarrollo de código abierto Sencha Touch, que también emplea HTML5 y CSS3 junto a librerias de JavaScript, pero con el que se desarrollan aplicaciones que funcionan en los navegadores web de los dispositivos móviles.

PhoneGap también soporta otras plataformas como iPhone, Palm, Windows Mobile, Symbian, Blackberry etcétera. Pese a que se vende como "herramientas de tecnología web", lo que ofrece PhoneGap u otros entornos de trabajo similares como Titanium, es acceso al hardware de la máquina, es decir crear aplicaciones en Html y javascript que usen la cámara, la brújula, el acelerómetro o el GPS. PhoneGap es además libre bajo la licencia MIT.

Para instalar Eclipse integrando Android SDK y PhoneGap en Ubuntu existen estos tutoriales para ubuntu 10 y Ubuntu 11.

El desarrollo de aplicaciones para Android esta basado principalmente en JavaScript con las librerías de código Android SDK. También están disponibles otras herramientas de desarrollo en C y C++. Además del entorno de desarrollo visual Appinventor para novatos lanzado por Google y el MIT.

Hay que puntualizar que entre diciembre de 2006 y mayo de 2007, Sun Microsystems liberó la mayor parte de sus librerias de código Java bajo la licencia GNU GPL. Posteriormente en abril de 2009 Oracle adquirió Sun Microsystems provocando conflicto de intereses y dudas acerca de la continuidad de tecnologías y aplicaciones de código abierto como por ejemplo el código Java, OpenOffice y Mysql entre otras. Pero a pesar de todo esto... Acer, LG, Sony, Samsung, Motorola y HTC son algunos de los fabricantes de dispositivos móviles que incorporan Android junto a millones de desarrolladores que siguen utilizando código Java para aplicaciones de tipo, muchas más que en otros sistemas operativos. La estrategia de Google con Android bajo licencia Apache 2.0 es básicamente crecer en cuota de mercado y crear una potente comunidad de desarrolladores, dejando que cada fabricante lo adapte a sus dispositivos a su manera.

Las aplicaciones Android no pasan validación y solo están sometidas a la valoración de los usuarios en el Google Play. Otras empresas también han creado sus propias tiendas de aplicaciones tanto para Android como para otros sistemas operativos. Ofreciendo el 30% de los ingresos de las ventas a los desarrolladores, Blackberry lo baja al 20%. En muchas de estas tiendas tendrás que pagar también una cuota para darte de alta como vendedor de aplicaciones; por ejemplo en el Google Market se cobra 25$, en la Apple Store 99$, en Blacberry 200$. En la tienda de Microsoft se exige el pago anual de 99$.

En la tienda oficial  de Apple obligan ha comprar la licencia de la librería SDK para su SO para poder poner a la venta las aplicaciones. Luego es imprescindible esperar más de 2 semanas para obtener la validación de la aplicación. Posteriormente Apple puede borrar tu aplicación en cualquier momento. Cualquier aplicación publicada en su tienda no puede ser vendida en otras tiendas alternativas. Su estrategia es la de hacer crecer los ingresos de sus tiendas virtuales iTunes y Apple Store con la venta creciente de contenidos multimedia y aplicaciones, reforzados con la venta de dispositivos móviles con un sistema operativo cerrado. Además el usuario de estos dispositivos no tienen acceso al sistema de archivos y no pueden compartir con otros lo que se compra o descarga.

Creemos que la oportunidad para los desarrolladores de aplicaciones para móviles no esta en la venta de aplicaciones directamente a los usuarios, esta realmente en ofrecer estas aplicaciones a empresas, profesionales independientes y organizaciones que quieran o necesiten desarrollar sus propias herramientas y servicios para dispositivos móviles. Los beneficios con la venta en tiendas online serán para aplicaciones como juegos y contenidos multimedia. Aquellos que se descargan millones de veces y compitiendo con mucha oferta a bajos precios o gratis a cambio de publicidad. Hay que agudizar mucho el ingenio para crear una nueva aplicación que no exista o un juego que vaya a ponerse de moda de la noche a la mañana. Si se te ocurre algo... nos lo cuentas y te ayudamos :)