ios - ¿Cómo puedo desarrollar para iPhone usando una máquina de desarrollo de Windows?


¿Hay alguna forma de jugar con el iPhone SDK en una máquina con Windows? ¿Hay planes para una versión de iPhone SDK para Windows?

La única otra forma en que puedo pensar en hacer esto es ejecutar una imagen de máquina virtual de Mac en un servidor VMWare que se ejecuta en Windows, aunque no estoy muy seguro de lo legal que es esto.



Answers



Ciertamente es posible desarrollarlo en una máquina con Windows, de hecho, mi primera aplicación fue desarrollada exclusivamente en la antigua Dell Precision que tenía en ese momento :)

Hay tres rutas;

  1. Instale OSx86 (también conocido como iATKOS / Kalyway) en una segunda partición / disco y arranque dual.
  2. Ejecute Mac OS X Server en VMWare (Mac OS X 10.7 (Lion) en adelante, lea la actualización a continuación).
  3. Use Delphi XE4 y el servicio macincloud. Este es un conjunto de herramientas comerciales, pero el soporte de componentes y lib está creciendo.

La primera ruta requiere la modificación (o uso de una imagen pre-modificada) de Leopard que se puede instalar en una PC normal. Esto no es tan difícil como se podría pensar, aunque su proporción de éxito / esfuerzo dependerá de qué tan de cerca el hardware de su PC coincida con el hardware de Mac; por ejemplo, si está ejecutando un Core 2 Duo en una placa madre Intel, con NVidia tarjeta gráfica, te estás riendo. Si está ejecutando una máquina AMD o algo sin SSE3 se complica un poco más.

Si compra (o ya posee) una versión de Leopard, este es un área gris ya que el EULA de Leopard establece que solo puede ejecutarlo en una máquina con "Etiqueta de Apple". Como muchos señalan si pones una pegatina de Apple en tu PC, probablemente estés cubierto.

La segunda opción es la más costosa. El EULA para la versión de estación de trabajo de Leopard evita que se ejecute bajo emulación y, como resultado, no hay soporte en VMWare para esto. Sin embargo, el servidor Leopard PUEDE ejecutarse bajo emulación y se puede usar con fines de escritorio. Leopard Server y VMWare son caros, sin embargo.

Si está interesado en la opción 1), le sugiero que comience en Insanelymac y lea las secciones de OSx86.

Creo que deberías considerar si valdrá la pena el dinero que ahorrarás. Fue para mí porque me gusta juguetear con este tipo de cosas y comencé durante las primeras versiones beta de iPhone, meses antes de que su App Store estuviera disponible.

Alternativamente, puede recoger un Mac Mini de baja especificación de eBay. No necesita mucha potencia para ejecutar el SDK y siempre puede venderlo más tarde si decide detener el desarrollo o comprar una mejor Mac.

Actualización: no puede crear una máquina virtual Cliente Mac OS X para OS X 10.6 y versiones anteriores. Apple no permite que estos sistemas operativos de cliente sean virtualizados. Con Mac OS X 10.7 (Lion) en adelante, Apple ha cambiado su acuerdo de licencia con respecto a la virtualización. Fuente: VMWare KnowledgeBase




Si tiene un iPhone con jailbreak, puede instalar la cadena de herramientas iphone-gcc en el iPhone a través de Cydia y de esa manera puede compilar las aplicaciones en el iPhone. Las aplicaciones que se desarrollan de esta manera aún se pueden enviar a la App Store.

Y aunque el Sr. Valdez dijo que es un área gris (lo que es), el jailbreaking es increíblemente fácil y casi libre de riesgos. Sí, anula tu garantía, pero puedes hacer una restauración y nunca lo sabrán.




Xamarin ahora es mi voto más votado. Adquirido por Microsoft e integrado directamente en Visual Studio ahora y capaz de usar C # y con todas las actualizaciones y funciones que están agregando, puede hacer todo en Windows, incluso compilar, crear e iniciar la implementación. Solo necesita un Mac Mini para actuar como servidor de implementación, pero nunca necesita escribir ningún código en él.

Para juegos, Unity 3D es mi mejor elección. Admiten iOS y la mayoría de las otras plataformas. Para iOS y MAC, simplemente obtenga el MAC Mini más económico que pueda encontrar para hacer la compilación, pero todo el desarrollo se puede hacer en Windows.

Otras opciones:

Use Marmalade (anteriormente conocido como Airplay SDK) (para iPhone, necesitará una Mac para firmar su aplicación, pero eso es todo, todo el desarrollo / prueba se puede hacer en Windows). La licencia de nivel más bajo ahora es gratis.

Marmalade SDK

PhoneGap también funciona, pero he descubierto que no es tan agradable para los juegos, pero es bastante decente para las aplicaciones regulares de GUI. De nuevo, necesitará una Mac para firmar y probar su aplicación y cumplir con los términos de uso de Apple.




La mayoría de las llamadas "soluciones de Windows para desarrollo de iOS sin Mac" requieren Mac al final solo para firmar y enviar a la tienda de aplicaciones. Revisé algunos, aunque no todos (¿quién tiene el tiempo?)

Al final es demasiado problema aprender "su manera súper especial y fácil de programar iOS sin Objective-C", tienen muchos errores. Realmente el objetivo que están fijando es inalcanzable en mi opinión.

También le dedican mucho tiempo a utilizar declaraciones equivalentes de Objective-C simplemente en otro idioma. Parecen iguales, pero siempre hay diferencias sutiles que debes aprender además de obj-c. Lo cual también tiene menos sentido, porque ahora, en lugar de aprender menos, tienes que aprender más. Entonces, ¿dónde está la ganancia? También cuestan mucho, porque son muy difíciles de desarrollar.

Muchos carecen de habilidades de depuración de ningún tipo.

En mi opinión honesta, si eres un desarrollador duro de iOS, seguro que comprarás la mejor Mac y aprenderás el objetivo c. Es caro y lleva tiempo, pero si es tu camino, vale la pena.

Para un uso ocasional, es más fácil alquilar un servicio remoto de Mac, como XCodeClub.com




Puedes usar WinChain

Citando la página del proyecto:

Es la forma más fácil de construir la cadena de herramientas de iPhone en una computadora con Windows XP / Vista, que a su vez puede tomar el código fuente de Objective-C que usted escribe usando sus encabezados de UIKit (incluido con winChain) y compilarlo en una aplicación que puede usar en tu iPhone.




El SDK solo está disponible en OS X, lo que le obliga a usar un mac. Si no desea comprar un mac, puede ejecutar OS X en una máquina virtual en su caja de Windows, o puede instalar OS X en su PC.

En mi experiencia, la solución de máquina virtual es inusualmente lenta (en una laptop core2 duo con 2G ram). Si te apetece intentarlo, busca el torrente. Probablemente no valga la pena.

La otra opción es instalar OS X en su PC, comúnmente conocido como hackintosh. Los hackintoshes funcionan bastante bien: mi amigo acaba de vender su Mac porque su hackintosh de cuatro núcleos Dell era en realidad mucho más rápido que el hardware Apple (y costaba aproximadamente 1/3). Puede encontrar muchos artículos sobre cómo hacer esto; Aquí hay una sobre cómo instalar en una computadora portátil Dell Inspirion 1525: tutorial pro de hackbook

Por supuesto, estas dos opciones probablemente sean contrarias a algún esquema de licencias, por lo tanto, proceda bajo su propio riesgo.




No es necesario que posea una Mac ni necesita aprender Objective-C. Puede desarrollar en diferentes entornos y compilar en Objective-C más adelante.

desarrollando para el iphone y el ipad ejecutando osx 10.6 (leopardo de las nieves)

Este artículo que uno de nuestros desarrolladores escribió ofrece una descripción bastante completa de la instalación de OS X Snow Leopard en Windows usando iBoot, luego de instalar Vmware (con instrucciones), luego de poner en marcha su entorno de desarrollo de iPhone ... y algunas cosas más jugosas. Súper útil para mí.

Espero que ayude. Utiliza Phonegap para que pueda desarrollar en múltiples plataformas de teléfonos inteligentes a la vez.




Puedes usar Tersus (libre, de código abierto).







Un devkit que permite desarrollar aplicaciones de iPhone en Objective-C, C++ o simplemente C con Visual Studio:

Compruébalo en el entorno de compilación de iOS

Puede crear aplicaciones para iPhone directamente en Visual Studio (2008, 2010, Express).

Bastante limpio, incluso crea archivos IPA para su aplicación después de una compilación exitosa. El código funciona igual que en los dispositivos jailbreak, para el resto del planeta creo que la compilación final y el envío a la App Store deben hacerse en una Mac. Pero aún así, le permite desarrollar usando un conocido IDE.




Por supuesto, puede escribir el código Objective-C en el bloc de notas u otros programas y luego moverlo a una Mac para compilar.

Pero en serio, depende de si está desarrollando aplicaciones oficiales para poner en App Store o desarrollar aplicaciones para iPhone liberado. Para escribir aplicaciones oficiales, Apple iPhone SDK que requiere una Mac Intel parece ser la única forma práctica. Sin embargo, hay una cadena de herramientas no oficial para escribir aplicaciones para iPhones con jailbreak. Puede ejecutarlo en Linux y Windows (usando Cygwin).




Pruebe macincloud.com Le permite alquilar un mac y acceder a él a través del control remoto RDP. Luego puede usar su PC para acceder a un Mac y luego desarrollar sus aplicaciones.




¡Hurra! Ahora puede lograrlo más fácilmente con el último Xamarin.iOS, utilizando un mac vinculado a la red que proporciona las capacidades de compilación e implementación.

Mira aquí para más detalles:

introducción a xamarin ios para estudio visual




Si quiere que sea legítimo, tiene dos opciones, soluciones Mac basadas en la nube o herramientas de desarrollo multiplataforma. Puede considerar el enfoque de hackintosh o las máquinas virtuales si no le importan las cuestiones legales. Si tienes una PC decente, ejecutar una máquina virtual sería la forma más fácil de hacerlo. Es posible que nunca sepas qué hardware tendrá problemas con el controlador en un hackintosh.

Intenté todos estos enfoques y todos tienen pros y contras, pero para el segundo grupo, me siento un poco culpable. Desarrollé aplicaciones para ganarse la vida y no me gustaría estafar a alguien más.

Si está haciendo un proyecto pequeño, las Mac basadas en la nube pueden ser útiles. Alquile por un tiempo corto, desarrolle su proyecto y listo. No te molestes en aprender nada nuevo.

Sin embargo, si su proyecto se está volviendo grande, los marcos multiplataforma parecen ser la única alternativa. Lo más importante es que debes elegir sabiamente. Hay tantos frameworks híbridos, pero lo que hacen se puede resumir en una frase como "mostrar páginas web en un contenedor de aplicaciones" y la experiencia negativa de los desarrolladores con frameworks híbridos también afecta a los frameworks nativos.

Probé tres de estos (Titanium, Smartface y Xamarin) y todos afirman que producen "salida nativa real" y, en mi opinión, sus afirmaciones son correctas. Tienes que probar y verlo a ti mismo, no es fácil describir el sentimiento nativo. En un comentario anterior, se indicó que se necesita un cierto esfuerzo para aprender estas plataformas, pero una vez que las conoces, puedes desarrollar no solo aplicaciones iOS sino también aplicaciones Android, todas con la base de código común. Y, por supuesto, son mucho más baratos que una Mac de la nube. Algunos de ellos son incluso gratuitos. Necesitarías una Mac solo para el envío a la tienda.

Si conoces JavaScript, prueba Titanium y Smartface y si conoces C #, prueba Xamarin. Solo tenga en cuenta que para el simulador de dispositivo, Titanium depende de una Mac, pero Smartface tiene una aplicación de simulación para el desarrollo de Windows y funciona mejor de lo que esperaba. Por otro lado, Xamarin requiere una Mac en su red.







Si quieres crear aplicaciones para iPhone pero no Mac, entonces deberías probar http://www.pmbaty.com/iosbuildenv/

Le permite desarrollar fácilmente aplicaciones iOS nativas, como con XCode, desplegable en cualquier iPhone, iPod o iPad (con jailbreak o no).

Use su IDE favorito para codificar en el ensamblaje Objective-C, C ++, C o ARM, como en XCode. ARC y bloques son compatibles.

Compila tus aplicaciones de iPhone directamente dentro de Visual Studio

Funciona en Windows todas las versiones (XP, 7, 8), FreeBSD y Linux

Ahora con soporte iOS8.




Puede usar Intel XDK con el que puede desarrollar y publicar aplicaciones para iOS sin mac.

Haga clic aquí para más detalles.




Mira esto:

Visión de conjunto

Es un proyecto que intenta ser capaz de compilar de forma cruzada programas escritos en una variedad de lenguajes de origen para una variedad de idiomas de destino. Uno de los casos de prueba iniciales fue escribir programas en Java y ejecutarlos en un iPhone. Ver el video en el sitio vale la pena.

Dicho esto, no lo he intentado. El proyecto parece bastante beta, y no hay mucha actividad en su sitio SourceForge.




Es interesante que nadie haya mencionado la opción wxWidgets multiplataforma.

Sin embargo, es menos que una solución óptima .

En mi humilde opinión, la forma más inteligente de hacer negocios es invertir el dinero en el marco respaldado por Apple. De esa manera, si te encuentras atascado con algún problema alucinante, tienes una comunidad de desarrolladores mucho más grande para consultar.




PUEDE DESARROLLAR APLICACIONES IPHONE EN PC WINDOWS. Lo he hecho, con aplicaciones complejas. Y funciona perfectamente. Puede desarrollar aplicaciones para iphone sin siquiera ver un Mac o iPhone.

Puede desarrollar en Windows una aplicación HTML (o mejor: HTML5), utilizando herramientas como Sencha o JQTouch, o mobi1. (Todos solían ser libres por un tiempo)

Luego usa openSSL para firmar la aplicación. Y Adobe PhoneGAP Build servicio para construir la aplicación de iPhone.

Pero necesita la licencia de desarrollador de iphone para instalarlo en un iphone. Pero no necesita un Mac o iPhone en ningún momento para compilarlo, compilarlo o probarlo, todo lo que se hace EN LA PC.

Lo he hecho, y funciona perfectamente. (Pero con la capacidad de respuesta de Android, no tan rápido como una aplicación nativa de iPhone)

También podría usar un programa de la era babilónica (circa 300 a. C.) ejecutando C y C ++ llamado libélula. Si tu aplicación tiene una o dos pantallas con interactividad limitada y muchos cálculos, hazlo. Incluye un emulador. Usted compila en el iphone con solo presionar un botón. (No estoy seguro, pero creo que necesitas una licencia de desarrollador en cualquier caso)

Y luego está Xamarin. Desarrollas en C # con llamadas especiales al código nativo. Tendrás que aprender el ambiente.




Puede usar Sentenza para hacer aplicaciones para iPhone, en Windows. Probado con éxito ¡No es una solución sino una buena alternativa!




Otras dos opciones

  1. Titanium Developer - edición gratuita para la comunidad - escribir en HTML / JavaScript - compilar con Xcode (requiere una Mac o VM)

  2. OpenPlus ELIPS Studio - escribe en Flex, compila en Xcode (requiere una Mac o VM) - sin embargo, comenzaron a cargar sus productos.

Creo que puede haber opciones de 'toolchain' para estos y algunos de los otros mencionados, que le permiten compilar en binario en Windows, y he visto que puede cargar un archivo zip y tener una compilación de estilo de cadena de herramientas hecha para usted en línea, pero esto va en contra de las licencias de Apple.

Si no me equivoco, un producto como Titanium que emita / trabaje con Xcode y no use bibliotecas de terceros / alternativas / restringidas debería cumplir con las normas, porque en última instancia está compilando en xcode - código Objective-C normal y bibliotecas.




Como se ha señalado, puede intentar usar WinChain, pero si es un programador novato, no será fácil.

El iPhone SDK funcionará en Hackintoshes (una PC normal con OS X instalado). Sé que tengo uno y lo tiene.

Entonces, después de comprar una licencia de OSX, puede TRATAR de instalarla en su PC en una unidad diferente usando Boot-132 o uno de los otros instaladores como iDeneb. El problema que tendrá que hacer un montón de modificaciones y cosas aún no funcionará del todo bien.




Sí y no necesita aprender Objective-C y comprar software y hardware de Apple.

Adobe ha creado un compilador de ActionScript 3 para programar para iOS. Y luego Apple aprobó este método de creación de aplicaciones.

Esta es la mejor manera de crear aplicaciones de Apple en Windows o Linux / BSD (y otra para MacOS-X)




drim.co.il proporciona una solución para desarrollar de forma remota en mac con PC con cualquier sistema operativo. No requiere instalación en la PC del cliente.




Si desea desarrollar una aplicación en el entorno de Windows, existe una opción, puede instalar el sistema operativo MAC en su Windows El nombre de la plataforma es: "Niresh'MAC OS", puede buscar ese texto en Google

entonces puedes descargar todo el MAC OS Source e instalar fácilmente el MAC OS en tu PC con Windows, Niresh puede hackear todo el sistema operativo.

Espero que esto te ayudará.




Puede instalar OSX en la PC pero la experiencia no será genial y necesita mucho trabajo. Alternativo es usar un framework / SDK Codename one : que está basado en JAVA y se puede usar para codificar en WP8, Android, iOS en Windows (eclipse) con todas las características

Descripción de las características:

  1. Entorno Android completo con simulador de Android súper rápido
  2. Un simulador de iPhone / iPad con aplicaciones de iPhone fáciles de tomar para iPad de pantalla grande en minutos.
  3. Soporte completo para la depuración Java estándar, creación de perfiles para aplicaciones en cualquier plataforma.
  4. Diseño / estilo sencillo: a solo un clic de distancia

Más en Desarrollar aplicaciones para Android, iOS iPhone, WP8 usando Java Disclaimer: esta es mi crítica para el producto




Como mucha gente ya respondió, el SDK de iPhone está disponible solo para OS X, y creo que Apple nunca lo lanzará para Windows. Pero hay varios entornos / marcos alternativos que le permiten desarrollar aplicaciones de iOS, incluso empaquetar y enviar a AppStore utilizando máquinas Windows y MAC. Estas son las opciones más populares y relativamente mejores.

PhoneGap , permite crear aplicaciones basadas en web, usando HTML / CSS / JavaScript

Xamarin , aplicaciones multiplataforma en C #

Adobe AIR , aplicaciones aéreas con Flash / ActionScript

Unity3D , motor de juego multiplataforma

Nota: Unity requiere Xcode y, por lo tanto, OS X para construir proyectos iOS.




Oracle VirtualBox permite a los usuarios instalar Mac OS X en una máquina virtual. Si te sientes cómodo con él, puedes utilizarlo de esa manera para usar Xcode. Esto es legal si "arranque dual" su mac en Windows, luego instale VirtualBox dentro de Windows (o Linux).

Otras posibilidades son los compiladores cruzados como Appcelerator Titanium (HTML, CSS y JavaScript) o MonoTouch (.NET).




Si tiene acceso ssh a una Mac, puede usar una VCN (como Vine VCN, que permite múltiples usos a la vez - thin thin client) para controlar XCode.

Esto podría ser útil si desea acceder a un Mac Mini desde una computadora portátil, o su SO está acaparando su MacBook.