2009-07-20 5 views
6

Non ho mai fatto alcun sviluppo per iPhone o iPod Touch, a causa della necessità aggiuntiva di sviluppare un Mac, oltre a dover imparare Objective-C. Con l'annuncio di MonoTouch ora posso usare i linguaggi .NET che conosco già e sviluppare sul mio PC Windows.MonoTouch richiederà un Mac per pubblicare su iPhone/iPod Touch?

Tuttavia, sono curioso di sapere se avrò ancora bisogno di un Mac per distribuire e testare la mia applicazione iPhone? Quindi quali strumenti sono necessari per iPhone touch e quali di quelli funzioneranno su Windows con MonoTouch?

+3

Ricorda che perderai il tuo tempo. Learning Objective-C è un gioco da ragazzi se conosci già qualche altro linguaggio simile a C. Il bit più complesso è imparare il framework. Sebbene questo MonoTouch ti permetta di riutilizzare le tue conoscenze per qualche sviluppo, avrai comunque bisogno di imparare alcune cose nuove per l'interfaccia utente di iPhone. Potresti anche mordere il proiettile e imparare semplicemente CocoaTouch. –

+1

Il vero ostacolo è quello di sborsare i soldi per comprare una nuova Apple quando ho già un nuovo PC desktop e laptop. A questo punto lo sviluppo dell'iPhone è una curiosità, non un'esigenza aziendale, quindi il costo è difficilmente giustificabile. –

risposta

11

Visto che lo strumento codesigning necessario firmare l'applicazione per l'esecuzione sul dispositivo è documentato e disponibile solo per OS XI penso che sia una scommessa sicura che si può solo effettivamente costruire un app per la distribuzione su OS X.

Sebbene tecnicamente sia possibile compilare app con altri sistemi operativi, con il simulatore o lo strumento codesign non è possibile testarli, quindi è necessario disporre di un Mac per farlo comunque. Suppongo che potrebbe anche essere possibile testare su dispositivo jailbroken, ma non vorrei spedire un'app che non era stata testata un firmware OS di serie.

+0

Grazie Louis. Questo era quello che mi aspettavo potrebbe essere il caso. –

6

I semi per una risposta sono incorporati nella domanda. Dal project page:

MonoTouch richiede un Mac e iPhone SDK di Apple per testare sull'emulatore; E sarà necessario essere uno sviluppatore iPhone Apple da distribuire sul dispositivo .

2

Nessuno dei punti della risposta di Michael parla direttamente alla domanda di Jim.

Essere su una piattaforma Windows ti impedirà di utilizzare l'emulatore dell'SDK di iPhone, ma non ti impedirà necessariamente la distribuzione e il test su un iPhone/iPod Touch effettivo.

Per quanto ne so, non è necessario possedere hardware Mac per registrarsi come sviluppatore iPhone. Devi essere uno sviluppatore iPhone in modo da poter utilizzare la funzionalità di implementazione di test supportata da iPhone.

Non ho ancora provato MonoTouch ma questa è la mia comprensione di come funziona. Quando si compila usando MonoTouch, verrà emesso un file binario pronto per essere eseguito sul dispositivo iPhone/iPod Touch. Dovresti quindi utilizzare iTunes per trascinare il binario sul pannello dell'applicazione e sincronizzare il dispositivo. Questo approccio non sarà sicuramente automatizzato come lo sviluppo nativo, ma dovrebbe funzionare "Mac free".

+0

Sembra piuttosto spaventoso a meno che non ci sia il debug hardware. Come fai a sapere se stai perdendo memoria? Come lo risolvi se si blocca sul dispositivo ma non sull'emulatore?Sembra divertente, ma sarei spaventato di fare affidamento su di esso senza fare un progetto di test e vedere come è il flusso. – Nosredna

+0

concordato. Non riesco a immaginare di provare a scrivere un software per un dispositivo come l'iPhone senza una parte importante degli strumenti di sviluppo previsti. Quando faccio l'iPhone Dev, avrà sicuramente un Mac nella catena degli strumenti. Ho guardato un po 'allo sviluppo di iPhone e sono arrivato a comprare un MacBook Pro per fare lo sviluppo. E 'stato un acquisto incredibile e non ho rimpianto per un secondo. –

+2

Come sottolinea Louis, sarà necessario codificare il file binario prima dell'installazione su un dispositivo non jailbroken e questo è disponibile solo su Mac. –