Si puedo crear una aplicación que se ejecute en cualquier navegador estándar (incluso sin conexión), ¿por qué debería considerar reescribirla como nativa de varios dispositivos como Apple, Android, Windows, etc.

Depende de la aplicación que esté creando, pero hay un par de razones que hacen que valga la pena escribir una aplicación nativa.

  • Las aplicaciones nativas tienen respectivas “tiendas de aplicaciones” que potencialmente aumentan su exposición al mercado. Los usuarios finales están acostumbrados a buscar en las tiendas de aplicaciones nuevas aplicaciones en lugar de ir a un sitio web.
  • Hay características que las API HTML5 no pueden proporcionar. El procesamiento en segundo plano es un gran ejemplo. En una aplicación HTML5, una vez que el navegador no esté en primer plano, todos esos trabajadores web se detendrán. Otro ejemplo son las notificaciones push. Si tiene una aplicación HTML5, debe confiar en los sockets web para comunicarse con el dispositivo cliente mientras el usuario tiene una sesión activa. Con las aplicaciones nativas, tiene la capacidad de enviar notificaciones “fuera de banda”.

Si decide escribir una aplicación nativa, parece que debería adoptar el enfoque de “aplicación de envoltura”. Con una aplicación envolvente, puede crear una aplicación de shell y utilizar la vista web de la plataforma correspondiente para mostrar el contenido HTML5 de su aplicación como si fuera un navegador. Si necesita aprovechar las características nativas, puede atrapar eventos de IU desde la vista HTML y transferirlos a una interfaz nativa para su manejo.

Una desventaja de escribir aplicaciones nativas es que tiene una base de código bifurcada (al menos en parte). Tendrás la base de código de tu aplicación HTML5 y Java y Swift. Esto puede ser difícil de mantener. Para aliviar algo de esto, es posible que desee echar un vistazo a NativeScript (aplicaciones móviles nativas con Angular, TypeScript, JavaScript – NativeScript). NativeScript aprovecha JavaScript como lenguaje de fuente única para proporcionar una base de código única que es familiar para los desarrolladores de aplicaciones HTML5. [Nota: Windows Mobile no es compatible actualmente, pero a quién le importa, ¿verdad? :)]

Espero que esto ayude. ¡Mucha suerte con tu aplicación!

No deberías A menos que su mercado objetivo sea el segmento de personas con teléfonos muy antiguos. Las aplicaciones web son el futuro.

Inicialmente, Steve Jobs invitó a los desarrolladores a crear aplicaciones web 2.0 ajax en la parte superior del navegador safari, unas semanas antes del lanzamiento del iphone. Luego, en 2008, hizo un giro de 180 ° y abrió la tienda de aplicaciones nativa. Por qué ? Simplemente porque la tecnología (navegadores, dispositivos) y las redes no estaban listas (y también porque el recorte del 30% de la tienda de aplicaciones se convertiría en una buena línea de ingresos).

Vea las “7 razones por las que las tiendas de aplicaciones están condenadas” de Frederick Tubiermont aquí:

7 razones por las que las tiendas de aplicaciones están condenadas – Frederick Tubiermont – Medium

Supongo que te confundiste un poco entre las aplicaciones híbridas y nativas. No crea una aplicación que se ejecute en ningún navegador. Dicho esto, existen ventajas y desventajas para usar Hybrid y Native.

Comencemos con Híbrido,

  • Puede reutilizar la mayoría del mismo código de su aplicación híbrida a su aplicación web. Siempre que esté utilizando una pila de tecnología similar. Como angular o reaccionar.
  • El desarrollo es mucho más rápido.

Los contras son

  • No puedes construir juegos
  • No puede tener un rendimiento perfecto como una aplicación nativa.
  • Si la interacción del usuario o incluso las animaciones y los efectos son más, se retrasará mucho, algunos de los efectos o características no son rápidos

Estos son solo algunos de los puntos. Para las aplicaciones nativas, solo tiene en cuenta lo contrario de la mayoría de los puntos anteriores.

Esencialmente, debe decidir cuál es la característica principal que su usuario quiere usar. Y con qué frecuencia se usará. Como cámara, en caso de instagram.

Hay razones comerciales y tecnológicas para eso:

  • No es fácil vender la aplicación, pero es millones de veces más difícil de vender en la web. La gente llega a la web con la expectativa de que es gratis
  • si gana con los anuncios, es simple: los bloqueadores de anuncios bloquearán sus ingresos en la web y no en la tienda
  • Como la web contiene todo y no solo las aplicaciones, será muy difícil para las personas encontrarte. Si bien en la tienda de aplicaciones no puede confiar únicamente en la capacidad de detección de su aplicación en la tienda para construir un negocio viable, no puede confiar en eso en absoluto en la web
  • al menos en iOS no puede anclar el sitio web a la pantalla de inicio y eso probablemente hará que todos renuncien a usar su sitio en la base frecuente (si construye el servicio que la gente usa como una vez al año, entonces probablemente sea OKAY).
  • Como puede esperar que se ejecuten más cosas en los servidores, el costo de su servidor aumentará
  • piense dos veces si puede proporcionar una experiencia tan buena para los usuarios como las aplicaciones nativas de la competencia (rendimiento, batería, interfaz, características, etc.). No pienses que las cosas menores no son importantes, son aquellas que te harán ganar o perder la batalla.

Para obtener acceso a todos los componentes de hardware y para un mejor rendimiento. Aplicaciones nativas siempre más rápidas que las aplicaciones web. También depende totalmente de los requisitos de su aplicación.