multiplataforma moviles gratis desventajas crear aplicaciones android cordova

moviles - Cuáles son las limitaciones y desventajas de Phonegap o HTML5 en comparación con los de Android



desventajas de html5 (3)

Tengo curiosidad por saber si hay inconvenientes o limitaciones de usar Phonegap en comparación con el uso de Android. ¿Qué más podemos hacer que no se puede lograr utilizando la otra plataforma?

¿Por qué uno elegiría específicamente Phonegap sobre Android (además del presupuesto o la compatibilidad multiplataforma) o viceversa? Estoy buscando escenarios claros con justificaciones.


PhoneGap Pros

PhoneGap es una excelente solución en una serie de situaciones:

Múltiples plataformas: como el front-end de la aplicación está construido con tecnologías web, se puede implementar una aplicación PhoneGap con el mismo código fuente exacto en diferentes plataformas.

Acceda a la funcionalidad nativa básica: si la aplicación requiere un acceso mínimo a las API nativas, como la cámara, la geolocalización y los contactos, PhoneGap le permite acceder a estas API con solo unas pocas líneas de código JavaScript.

Uso fuera de línea: aunque la aplicación está desarrollada utilizando tecnologías web, aún puede proporcionar funcionalidad fuera de línea y tiene acceso a la memoria caché local del navegador.

PhoneGap Contras

Dado que el front-end de la aplicación está construido en JavaScript, causa una serie de limitaciones.

Procesamiento de datos: los lenguajes nativos son mucho más rápidos que JavaScript para el procesamiento de datos en el dispositivo.

Procesamiento en segundo plano: una gran cantidad de aplicaciones se basan en subprocesos de fondo para proporcionar una experiencia de usuario fluida: calcular las posiciones GPS en el fondo, por ejemplo. Las API de PhoneGap se crean utilizando JavaScript que no tiene múltiples subprocesos y, por lo tanto, no es compatible con el procesamiento en segundo plano.

Acceda a la funcionalidad nativa avanzada: las API de PhoneGap todavía no admiten una serie de API nativas.

Lógica empresarial compleja: varias aplicaciones, como las empresariales, son bastante complejas. En este escenario, simplemente es mejor tener una cierta cantidad de código nativo.

Gráficos avanzados: las aplicaciones que usan gráficos avanzados a los que solo se puede acceder utilizando bibliotecas de terceros se realizan mejor de forma nativa.


Beneficios de crear una aplicación web móvil: 1) Solo necesita habilidades de HTML5 / CSS / Javascript frente a Objective-C o Java. Hicimos las cosas aún más simples al usar Mobl ( http://www.mobl-lang.org ), un lenguaje específico de dominio para crear aplicaciones web móviles que compila en javascript / html. 2) Base de código único para todas las plataformas (iOS, Android, Windows 7, web móvil) 3) Pruebas e implementación rápidas (hasta que Phonegap, momento en el que está sujeto a las condiciones de revisión de App Store, etc.) 4) Con Phonegap, aún puede aprovechar la distribución y el pago integrado a través de App Store o Android Market.

Inconvenientes: 1) Bajo rendimiento, especialmente si su aplicación es gráficamente intensa, es decir, un juego. Puede implementar el almacenamiento en caché o aprovechar algunas soluciones de terceros (es decir, Sibblingz) para la aceleración gráfica nativa, pero en su mayor parte una aplicación nativa es mucho más rápida / más suave que la aplicación web móvil 2) La falta de widgets UI preconstruidos, transiciones, controles estándar, etc. Su tiempo de desarrollo puede llevar más tiempo, especialmente si desea una aplicación de aspecto pulido con un aspecto y apariencia nativos. Puede probar el uso de Sencha Touch, JQ Touch o herramientas similares con elementos de interfaz de usuario preconstruidos, pero es probable que deba dedicar una buena cantidad de tiempo a diseñar la aplicación para que parezca original.

Entonces, ¿deberías construir una aplicación web móvil o una nativa? Si está compilando una aplicación que está involucrada gráficamente o involucra operaciones computacionalmente costosas, asegúrese de ser nativo, ya que las herramientas aún no están allí para facilitar el trabajo de las aplicaciones web para dispositivos móviles. Si está creando algo bastante simple y no necesita ningún estilo nativo o pulido de diseño, vaya a la ruta web móvil.


Divulgación completa. Soy uno de los principales responsables de la implementación de Android de PhoneGap, por lo que mi opinión puede ser parcial, pero me gusta pensar que soy justo.

Para responder a su pregunta, realmente depende de cuáles sean sus requisitos. Ya ha descartado el presupuesto y la plataforma cruzada, que son dos de los beneficios clave de PhoneGap. Por ejemplo, si nunca tuve la intención de apuntar a ninguna plataforma, pero Android probablemente iría con el desarrollo nativo de Android, pero si fuéramos a otras plataformas elegiría PhoneGap. Además, eche un vistazo a mi equipo, ¿son ellos los programadores de núcleo duro de Java? Ir a Android. ¿Son desarrolladores HTML? Vaya PhoneGap o HTML5 puro.

Además, depende del tipo de aplicación que está escribiendo. Un tirador en primera persona, ve a Android. Una aplicación de datos basada en tablas, PhoneGap es el camino a seguir.

De todos modos, sin saber qué tipo de aplicación estás tratando de desarrollar, es difícil ser específico.