2008-12-18 12 views
19

Mono è stato già trasferito su iPhone? Mi piacerebbe scrivere app .NET per iPhone e imparare Objective C non è un'opzione per me.Mono su iPhone?

+2

Si prega di approfondire perché imparare Objective-C "non è un'opzione" e ciò che si sente che ci si ottenere scrivendo applicazioni .NET, invece di applicazioni che utilizzano strutture native di iPhone. –

+0

Sono sulla stessa barca, ho pensato di prendere un iPhone per iniziare a scrivere il codice per questo agosto dell'anno scorso. Poi sono successe tre cose: ho guardato il codice di iPhone, ho letto storie di sviluppo per iPhone e Android è stato rilasciato. Ciao ciao iPhone !!! – jcollum

+0

@jcollum, spero che vi divertiate a sviluppare per <1 milione di telefoni contro> 10 milioni. Questo potrebbe cambiare, ma l'iPhone è una scelta di sviluppo al momento direi. – rustyshelf

risposta

41

Mono oggi è disponibile in due forme:

  • mono con attacchi alle API iOS per http://monotouch.net
  • Mono come un motore di scripting che alimentano Unity3D
+0

Purtroppo la licenza di Xamarin (che il tuo link punta a) non è buona per noi. C'è qualche possibilità di eseguire .Net su iOS senza Xamarin? –

+0

@ user695797 beh .. open source o mono licenza da xamarin .. L'una o l'altra licenza dovrebbe coprire tutti i delployments (Oppure puoi parlare direttamente con xamarin come faceva la mia compagnia) – IanNorton

0

Mai dire mai, ma poiché richiederebbe anche un runtime in esecuzione, non riesco a vedere che accada mai. Apple avrebbe dovuto sanzionare e installare il runtime mono/.net con il firmware standard. Lo stesso vale per Java troppo immagino ...

+0

Tuttavia, abbiamo anche iPhone jailbroken! –

17

dispiace ma non completamente vero: http://www.mono-project.com/Mono:Iphone

+1

È buono come vero. Sembra solo doloroso rispetto all'apprendimento di Objective-C. La mia parte preferita è: * È necessaria una quantità significativa di compilazione incrociata, questo è tutt'altro che facile. * Nessuna API iPhone è stata esposta, quindi ottieni le basi molto basilari. – rustyshelf

+0

In aggiunta al fatto che si esegui _must_program su un Mac e _must_ appartenga al programma per sviluppatori Apple. È necessario essere in grado di programmare contro qualcosa che conosci, ma se sei già in gran parte già lì (e Apple non può accettare il tuo codice perché stai usando strumenti di sviluppo non scritti da loro), allora potresti anche fare è "la strada giusta" tramite l'obiettivo C. –

3

Here's a blog entry da Miguel de Icaza mostrando Mono in esecuzione su iPhone

(ho il sospetto è un telefono jailbroken, e KiwiBastard probabilmente è del tutto corretto riguardo ai cambiamenti di esso che siano mai stati ufficiali)

1

Questa domanda viene posta più e più volte. Se si vuole scrivere applicazioni ufficiali per iPhone è necessario:

  • hanno un vero e proprio Mac

  • imparare Objective-C e Cocoa Touch

  • bere il Kool-Aid

Cercare di aggirare uno dei precedenti è uno spreco di tempo e di tempo. Come ho già detto molte volte prima che sia la via di Steve o l'autostrada, e se vuoi svilupparlo su iPhone, è meglio imparare la lezione prima piuttosto che dopo.

+1

Non dovrebbe essere la via o l'autostrada di Steve? –

+0

Buon punto, ho corretto il tipo ... anche se 'of' forse funziona pure, dal momento che probabilmente Steve avrebbe costruito l'autostrada in primo luogo ... – rustyshelf

+0

Oh e anche essere disposto a rischiare che il tuo tempo finisca nel nulla quando il Il team del negozio di iPhone rifiuta il codice o determina che Apple sta per pubblicare la propria versione della tua app. – jcollum

-1

Scusa, piccola, ma Obj-C è l'unico modo. Perché "non è un'opzione"?

La tua app sarà "non un'opzione" per Apple per l'App Store a meno che non sia scritta in Obj-C su Xcode e firmata correttamente.

5

Per i nay-sayers, per favore, listen to Miguel de Icaza stesso parlando del soggetto con Scott Hanselman sul podcast 24NOV2008 Hanselminutes (intorno al punto 23:50).

Per farla breve: ci sono piani per ottenere le applicazioni Silverlight compilate staticamente per conformarsi ai requisiti di Apple.
Non sarete in grado di eseguirli nel browser ma sarebbero app completamente integrate di iPhone come qualsiasi altra.

+0

E come si potrebbe aggirare le restrizioni ufficiali dell'App Store che dici che non puoi usare un interprete che non viene fornito con il telefono? Ovviamente si può fare qualsiasi cosa su un telefono Jailbroken, ma presumibilmente questo non è quello che sta cercando. –

+1

Bene, dovresti ascoltare lo spettacolo. Il punto chiave è che la tua applicazione verrebbe compilata __ staticamente e diventerebbe solo un'altra applicazione nativa. –

+0

Si utilizza AOT per precompilare il codice, quindi non è più compilato JIT. – jpobst

8

Stiamo sviluppando un legame Cocoa Touch chiamato MonoTouch e un pieno AOT toolchain che permetterà la costruzione di applicazioni iPhone native che utilizzano Mono e MonoDevelop. Questo sarà un prodotto commerciale, con una versione beta prevista per agosto. Rimanete sintonizzati!

Miguel ha blogged about this.

3

Ciò consente di utilizzare C# per iPhone ora (solo recentemente rilasciato, credo), ma è ancora necessario disporre di un Mac.

http://monotouch.net/