Desarrollador(es) | Compañía Apple Inc. |
---|---|
Lanzamiento inicial | 6 de marzo de 2008 ( 06-03-2008 ) |
Sistema operativo | macOS |
Plataforma | iOS , iPadOS |
Disponible en | Inglés |
Tipo | Kit de desarrollo de software |
Sitio web | Desarrollador de Apple |
El iOS SDK ( iOS Software Development Kit ), anteriormente iPhone SDK , es un kit de desarrollo de software (SDK) desarrollado por Apple Inc. El kit permite el desarrollo de aplicaciones móviles en los sistemas operativos iOS y iPadOS de Apple .
El SDK de iOS es una descarga gratuita para los usuarios de computadoras personales Macintosh (o Mac). No está disponible para PC con Microsoft Windows . El SDK contiene conjuntos que brindan a los desarrolladores acceso a varias funciones y servicios de los dispositivos iOS, como atributos de hardware y software . También contiene un simulador de iPhone para imitar la apariencia del dispositivo en la computadora mientras se desarrolla. Las nuevas versiones del SDK acompañan a las nuevas versiones de iOS. Para probar aplicaciones, obtener soporte técnico y distribuir aplicaciones a través de App Store , los desarrolladores deben suscribirse al Programa para desarrolladores de Apple .
En combinación con Xcode , el SDK de iOS ayuda a los desarrolladores a escribir aplicaciones de iOS utilizando lenguajes de programación admitidos oficialmente , incluidos Swift y Objective-C . Otras empresas también han creado herramientas que permiten el desarrollo de aplicaciones nativas de iOS utilizando sus respectivos lenguajes de programación.
Aunque originalmente estaba desarrollando el iPhone antes de su presentación en 2007, el entonces CEO de Apple, Steve Jobs, no tenía la intención de dejar que desarrolladores externos crearan aplicaciones nativas para el sistema operativo iOS , sino que les indicó que crearan aplicaciones web para el navegador web Safari . [1] Sin embargo, la reacción de los desarrolladores impulsó a la compañía a reconsiderar, [1] y Jobs anunció el 17 de octubre de 2007 que Apple tendría un kit de desarrollo de software (SDK) disponible para los desarrolladores en febrero de 2008. [2] [3] El SDK se lanzó el 6 de marzo de 2008. [4] [5]
El SDK de iOS es una descarga gratuita para usuarios de Mac . [6] No está disponible para computadoras personales Microsoft Windows . [6] Para probar la aplicación, obtener soporte técnico y distribuir aplicaciones a través de App Store , los desarrolladores deben suscribirse al Programa de desarrolladores de Apple . [6]
Los contenidos del SDK se dividen en los siguientes conjuntos: [7]
El SDK también contiene un simulador de iPhone, un programa utilizado para simular la apariencia del iPhone en la computadora del desarrollador. [7]
Las nuevas versiones del SDK acompañan a las nuevas versiones de iOS. [8] [9]
El SDK de iOS, combinado con Xcode , ayuda a los desarrolladores a escribir aplicaciones de iOS utilizando lenguajes de programación oficialmente admitidos, incluidos Swift y Objective-C . [10]
Un archivo .ipa (iOS App Store Package) es un archivo de almacenamiento de aplicaciones iOS que almacena una aplicación iOS.
En 2008, Sun Microsystems anunció sus planes de lanzar una máquina virtual Java (JVM) para iOS, basada en la versión Java Platform, Micro Edition de Java. Esto permitiría que las aplicaciones Java se ejecutaran en iPhone y iPod Touch. [11] Poco después del anuncio, los desarrolladores familiarizados con los términos del acuerdo del SDK creyeron que al no permitir que aplicaciones de terceros se ejecutaran en segundo plano (responder una llamada telefónica y seguir ejecutando la aplicación, por ejemplo), [12] y al no permitir que una aplicación descargue código de otra fuente, ni permitir que una aplicación interactúe con una aplicación de terceros, los esfuerzos de desarrollo de Sun podrían verse obstaculizados sin la cooperación de Apple. [13] Sun también trabajó con una empresa externa llamada Innaworks en los intentos de obtener Java en iPhone. [14] A pesar de la aparente falta de interés de Apple, una filtración de firmware del lanzamiento del iPhone de 2007 reveló un chip ARM con un procesador con soporte Jazelle para la ejecución de Java integrada. [15]
Novell anunció en septiembre de 2009 que había desarrollado con éxito MonoTouch , un marco de software que permitía a los desarrolladores escribir aplicaciones nativas para iPhone en los lenguajes de programación C# y .NET , manteniendo al mismo tiempo la compatibilidad con los requisitos de Apple. [16]
iOS no es compatible con Adobe Flash , [17] y aunque Adobe tiene dos versiones de su software: Flash y Flash Lite, Apple no considera que ninguna sea adecuada para el iPhone, alegando que Flash completo es "demasiado lento para ser útil" y que Flash Lite "no se puede utilizar con la Web". [18] [19]
En octubre de 2009, Adobe anunció que una próxima actualización de su Creative Suite incluiría un componente que permitiría a los desarrolladores crear aplicaciones nativas para iPhone utilizando las herramientas de desarrollo Flash de la empresa. [20] El software se lanzó oficialmente como parte de la colección de aplicaciones profesionales Creative Suite 5 de la empresa. [21]
En abril de 2010, Apple realizó cambios controvertidos en su Acuerdo para desarrolladores de iPhone, requiriendo que los desarrolladores usaran solo lenguajes de programación "aprobados" para publicar aplicaciones en la App Store y prohibiendo las aplicaciones que usaran herramientas de desarrollo de terceros; la prohibición afectó a la herramienta Packager de Adobe, que convertía las aplicaciones Flash en aplicaciones iOS. [22] [23] Después de la reacción de los desarrolladores [24] y las noticias de una posible investigación antimonopolio, [25] Apple revisó nuevamente su acuerdo en septiembre, permitiendo el uso de herramientas de desarrollo de terceros. [24] [26]
Originalmente llamado "Proyecto Mazapán", [27] Mac Catalyst ayuda a los desarrolladores a llevar las experiencias de las aplicaciones de iPadOS a macOS y facilita la incorporación de aplicaciones desarrolladas para dispositivos iPadOS a Mac al evitar la necesidad de escribir el código de software subyacente dos veces.