Ho recentemente scelto di imparare C# e sviluppare app mobili utilizzando C# su Xamarin. In particolare per lo sviluppo di Windows Phone e Android. So che lo sviluppo di app per Windows Phone è principalmente C# e che Xamarin può compilare codice nativo per Android, ma come si confronta con lo sviluppo nativo in Java? Sarò in grado di utilizzare OGNI o almeno la maggior parte (come il 90% +) dell'SDK Android e le estensioni utilizzando Xamarin?In che modo Xamarin per Android (Mono per Android) è paragonabile allo sviluppo nativo di Android?
In che modo Xamarin per Android (Mono per Android) è paragonabile allo sviluppo nativo di Android?
risposta
è possibile utilizzare tutte le funzionalità di Android e l'interoperabilità di libreria java. inoltre, si ottiene il vantaggio di non specifici di Windows .net compreso linq.
Non ho fatto alcuna statistica o studio sulla copertura Xamarin C# dell'API Android Java, ma nel mio lavoro, tutto ciò di cui avevo bisogno durante il porting di codice da Java a C# era lì. Inoltre, Xamarin dice che per le nuove versioni di Android SDK di solito hanno rilasciato controparti C# entro 24 ore. E, come notava @dotToString, è possibile aggiungere librerie jar Java al progetto Xamarin C# ed effettuare chiamate su di esse, se necessario.
Le prestazioni sono un'altra cosa: non credo che funzioni nativamente su Android. Piuttosto, Mono runtime interpreta in qualche modo il codice byte. Ho fatto qualche confronto di Java vs. Xamarin C prestazioni # codice su codice di vita reale, vedere più al:
Greg
L'istruzione 'Mono runtime è in qualche modo l'interpretazione del codice byte' non è vera. –
@MarkLopez: se lo conosci meglio, spiega cosa fa esattamente. Molto probabilmente la compilazione "Just-in-Time" di .NET pcode in codice nativo, prima di eseguire - cosa - l'intera app, o un particolare modulo, o una funzione alla volta? – gregko
In esecuzione ci sono due runtime separati quando si esegue un'applicazione monodroid, una versione ridotta del CLR di .NET e l'Android Dalvik VM nativo. Il runtime .NET è ospitato all'interno del runtime mono (Mono.Android.Platform.ApiLevel_XY.apk) che viene distribuito con la tua app monodroid. È questo runtime monodroid che mantiene sincronizzati .NET CLR e Dalvik VM (creazione e distruzione di oggetti). – samosaris
La cosa principale che credo ci sia da considerare è il vostro linguaggio di programmazione preferito - che nel tuo caso è C# e l'uso. L'unica cosa che mi preoccupa quando costruisco un'applicazione in C# come opposto a Java è che non sono tanti i riferimenti di terze parti da usare come con Java. Ti ritroverai a scaricare i file di esempio e a decodificarli per imparare come fare nuove funzionalità, dovrai cercare molto più nell'intelligenza per scoprire cosa sta usando qualcosa se puoi trovare solo un esempio basato su Java di qualcosa. Una cosa che troverete è che di solito può essere solo lo stesso metodo di ciò che è in Java, ma la prima lettera è in maiuscolo. LINQ è un grande vantaggio che trovo nella manipolazione dei dati che non è disponibile in Java.
Buona fortuna con qualsiasi cosa tu scelga, James
- 1. Installa Xamarin Mono per Android
- 2. Installazione di Xamarin Mono per Android
- 3. Introduzione allo sviluppo Android
- 4. F # on Mono per Android
- 5. Mono per Android - Come funziona?
- 6. Sviluppo applicazioni Android WebRTC nativo
- 7. messagebox per Android mono
- 8. Aggiornamento applicazione Xamarin per Android
- 9. Macro mono per preprocessore Android
- 10. Dallo sviluppo Web allo sviluppo Android
- 11. Xamarin vs nativo iOS e Android
- 12. Genymotion Emulatore Android per Xamarin
- 13. Scrivere app per Android in C# (Xamarin)
- 14. Mono per Android, offuscamento del codice
- 15. È possibile sviluppare per Android su Android?
- 16. Sviluppo Android per principianti
- 17. Come usare Runnable in Mono per Android
- 18. Gestione di URL specifici con filtri intent in Xamarin Mono per Android
- 19. OnBackPressed in Xamarin Android
- 20. Mono per Android - Architettura supportata - Drop x86?
- 21. Distro Linux consigliato per workstation di sviluppo Android
- 22. Utilizzo memoria Xamarin per applicazioni Android
- 23. Android Book per lo sviluppo
- 24. Sviluppo di applicazioni per chat Android
- 25. Classe figlio applicazione personalizzata in Mono per Android
- 26. Sviluppo di app per iPhone e Android
- 27. Cerca Dialog in Mono Android
- 28. Ottimizzazione di Eclipse per lo sviluppo Android
- 29. Android utilizzando Xamarin
- 30. lockscreen nativo ICS Android
Probabilmente puoi passare un po 'di tempo a leggere la documentazione di Xamarin. Ecco il link- http://xamarin.com/. – Anukool
Nulla può avere luogo nel codice nativo :) –
Xamarin sul loro sito Web: Xamarin.Android fornisce l'accesso completo alle API Android standard. –