La respuesta es a la vez sí y no.
Sí: si quieres publicar una aplicación compilada, en la curada Apple Store como tu medio para conseguir la App en el dispositivo, entonces sí. Pero esto está justificado. Las apps nativas/compiladas (incluyendo aquellas a través de herramientas de terceros como React Native, Phone Gap, etc. que se compilan y agrupan en una aplicación), todas son capaces, por violación de las directrices de Apple, de violar el sandbox que aísla una app de otra. La App Store es un componente de seguridad necesario.
No: la App Store no es el único medio para conseguir una aplicación en su iDevice.
- Distribuir la aplicación como bibliotecas y un arnés ofuscado, los usuarios compilar y sideload con xCode. La herramienta de instalación podría hacer esto automáticamente.
- distribuir la aplicación como una web-app. Mientras que la herramienta Dashcode de Apple está descontinuada, existen otras herramientas que permiten una aplicación basada en HTML5/CSS3/JavaScript que, una vez guardada, aparece como una aplicación accesible en la pantalla de inicio.
- Jailbreak un iPhone y existen caminos alternativos para cargar una aplicación. Este es el camino más peligroso. Crea un agujero en el modelo de seguridad de Apple. Pero las tiendas de otras empresas que no son Apple han existido durante bastante tiempo vendiendo aplicaciones y distribuyendo aplicaciones gratuitas.
¿Cómo podría Apple separar la App Store y mantener el modelo de seguridad que permite a Apple tener increíblemente pocas aplicaciones maliciosas?
- Apple podría conceder licencias a terceras partes seleccionadas para mantener las tiendas de aplicaciones, y o bien tener un personal suficiente auditable para proporcionar una prueba aceptable de las nuevas aplicaciones, y Apple concedería una clave de firma para que pudieran ser cargadas en los dispositivos. Se les podría exigir que alojaran aplicaciones gratuitas y de pago para repartir la carga en la que incurre Apple.
- Apple podría conceder licencias a gran escala de aspectos de la Apple Store, como la prueba de aplicaciones y la agrupación como servicio. Una tienda de terceros podría suscribirse a estos servicios. Un usuario, en xCode, archivaría una aplicación como de costumbre, y Apple podría añadir un desplegable para seleccionar la tienda a la que enviar la aplicación, con Apple preprocesando la aplicación, firmando con la clave de la tienda de terceros, y luego transmitiendo la app firmada a la tienda de terceros.
- Proporcionar a las tiendas de terceros con licencia un cargador de aplicaciones en el dispositivo, descargable gratuitamente desde Apple. Una vez que la aplicación está en una tienda de terceros, Apple ya no comercializa la aplicación, ya no garantiza que la aplicación es segura, aunque la tienda de terceros podría, y podría afectar a la forma en que se muestra, posiblemente añadiendo una categoría de ajuste para aplicaciones de terceros, o tiendas de aplicaciones. Los usuarios de los dispositivos de Apple podrían ser advertidos de que la aplicación es suministrada por un tercero y está garantizada como segura por el tercero, no por Apple, y pedir al usuario que verifique que todavía quiere instalar la aplicación.
Se podría exigir a las tiendas de terceros que lleven un seguro que exima a Apple de cualquier acción legal relacionada con la aplicación.
Así que no es un monopolio, excepto que el entorno más «abierto» hoy en día es inseguro, o limitado. Pero teniendo en cuenta el moderno HTML y CSS, combinado con mi favorito SVG, puede crear potentes aplicaciones basadas en la web. Pero los desarrolladores están por necesidad enviando el código fuente.
Y se podría abrir más, pero para ser seguro, todavía depende de Apple.