Come posso sviluppare per iPhone usando una macchina di sviluppo Windows?

C'è un modo per armeggiare con l'iPhone SDK su una macchina Windows? Ci sono piani per una versione dell'iPhone SDK per Windows?

L'unico altro modo che mi viene in mente per farlo è eseguire un'immagine Mac VM su un server VMWare che gira su Windows, anche se non sono troppo sicuro di quanto sia legale.

È certamente possibile sviluppare su una macchina Windows, infatti, la mia prima applicazione è stata sviluppata esclusivamente sul vecchio Dell Precision che avevo all'epoca :)

Ci sono tre strade;

  1. Installare OSx86 (aka iATKOS / Kalyway) su una seconda partizione / disco e dual boot.
  2. Eseguire Mac OS X Server sotto VMWare (Mac OS X 10.7 (Lion) in poi, leggere l'aggiornamento qui sotto).
  3. Usare Delphi XE4 e il servizio macincloud. Questo è un set di strumenti commerciali, ma il supporto di componenti e lib è in crescita.

Il primo percorso richiede la modifica (o l'utilizzo di un'immagine pre-modificata) di Leopard che può essere installata su un normale PC. Questo non è così difficile come si potrebbe pensare, anche se il rapporto successo/sforzo dipenderà da quanto strettamente l'hardware del vostro PC corrisponde a quello del Mac - ad esempio, se si esegue un Core 2 Duo su una scheda madre Intel, con una scheda grafica NVidia si ride. Se stai usando una macchina AMD o qualcosa senza SSE3 la cosa diventa un po' più complicata.

Se acquistate (o già possedete) una versione di Leopard, allora questa è una zona grigia poiché l'EULA di Leopard afferma che potete eseguirlo solo su una macchina con etichetta Apple. Come molti sottolineano, se si attacca un adesivo Apple sul PC si è probabilmente coperti.

La seconda opzione è più costosa. L'EULA per la versione workstation di Leopard impedisce di essere eseguito sotto emulazione e, di conseguenza, non c'è supporto in VMWare per questo. Leopard server, tuttavia, può essere eseguito sotto emulazione e può essere utilizzato per scopi desktop. Leopard server e VMWare sono però costosi.

Se sei interessato all'opzione 1) ti suggerirei di iniziare da Insanelymac e leggere le sezioni OSx86.

Penso che dovreste considerare se il tempo che investirete varrà i soldi che risparmierete. Lo è stato per me perché mi piace armeggiare con questo tipo di cose e ho iniziato durante le prime beta dell'iPhone, mesi prima che l'App Store diventasse disponibile.

In alternativa, si potrebbe prendere un Mac Mini di bassa qualità da eBay. Non hai bisogno di molti cavalli per eseguire l'SDK e puoi sempre rivenderlo in seguito se decidi di interrompere lo sviluppo o comprare un Mac migliore.

Aggiornamento: non puoi creare una macchina virtuale Mac OS X Client per OS X 10.6 e precedenti. Apple non permette di virtualizzare questi sistemi operativi client. Con Mac OS X 10.7 (Lion) in poi, Apple ha cambiato il suo accordo di licenza per quanto riguarda la virtualizzazione. Fonte: VMWare KnowledgeBase

Commentari (7)

L'SDK è disponibile solo su OS X, costringendovi ad usare un mac. Se non volete acquistare un mac, potete eseguire OS X su una macchina virtuale sul vostro box Windows, oppure potete installare OS X sul vostro PC.

Nella mia esperienza la soluzione della macchina virtuale è insolitamente lenta (su un portatile core2 duo con 2G di ram). Se hai voglia di provarla cerca il torrent. Probabilmente non ne vale la pena.

L'altra opzione è installare OS X sul tuo PC, comunemente chiamato hackintosh. Gli hackintosh funzionano abbastanza bene - il mio amico ha appena venduto il suo mac perché il suo hackintosh Dell quad core era effettivamente molto più veloce dell'hardware della mela (e costava circa 1/3). Potete trovare molti articoli su come farlo; eccone uno su come installare su un portatile Dell Inspirion 1525: tutorial hackbook pro

Naturalmente entrambe queste opzioni sono probabilmente contrarie a qualche schema di licenza, quindi procedete a vostro rischio e pericolo.

Commentari (2)

Potete usare WinChain

Citando la pagina del progetto:

È il modo più semplice per costruire la toolchain dell'iPhone su un computer Windows XP/Vista, che a sua volta, può prendere il codice sorgente Objective-C che scrivi usando i loro Headers UIKit (inclusi con winChain) e compilarlo in un'applicazione che puoi usare sul tuo iPhone.

Commentari (2)