C # ist dem Ziel C ähnlicher als Java. Das iPhone verwendet das erstere, Android das letztere. Daher ist es sinnvoller, die iPhone-Entwicklung auszuprobieren als die Android-Entwicklung, wenn Sie C # bereits kennen.
Todd Davies
82
@ToddDavies Ich würde überhaupt nicht zustimmen und sagen, dass Java und C # die ähnlichsten Sprachen sind. Tatsächlich würde ich sagen, dass Ziel C C # überhaupt nicht widerspiegelt.
Darren
Nun, jeder nach seiner eigenen Meinung, aber ich bin sicher, dass Java zu Ziel C gehört, da ich zu meinem am meisten gehassten fünften entfernten Cousin bin: P
Todd Davies
1
+1 @DarrenDavies Die Mono-Bindungen für iOS haben an einigen Stellen (z. B. Protokollen) Schwierigkeiten, ihre Objective-C-Entsprechungen darzustellen, aber sie sind direkt 1: 1 gegen Android.
Bitte werfen Sie einen Blick auf den Kommentar, den ich zu Seva Alekseyevs Antwort hinzugefügt habe.
CoolArchTek
@CoolArchTek - Sie können die evauluation kostenlos herunterladen, Mono für Android Professional kostet jedoch 399 US-Dollar und Enterprise 999 US-Dollar. store.xamarin.com
Darren
13
Es ist äußerst unerschwinglich, ein paar Apps für sich und Ihre Freunde zu schreiben. Ich würde mir wünschen, es gäbe etwas "dazwischen". In Anbetracht der Tatsache, dass Android + Eclipse KOSTENLOS und Visual Studio Express KOSTENLOS ist, verpassen Xamarin aufgrund ihrer Preise viel
cmroanirgo
1
@cmroanirgo Xamarin unterstützt jetzt ein abonnementbasiertes Modell mit einer kostenlosen Option - Sie müssen Mono nicht mehr für Android kaufen.
James
4
http://www.dot42.com/ hat dies auf ihrer Website dot42 has been discontinued and is no longer supported. All sources are availabe on GitHub. The latest build is available as a binary setup.ab dem 29.05.2015. Sie hatten einen Quelldownload und einen GitHub .
JabberwockyDecompiler
78
Nachdem ich Mono verwendet habe, würde ich es NICHT empfehlen. Die Mono-Laufzeit wird mit Ihrer App gebündelt, sodass Ihre apk bei mehr als 6 MB aufgebläht ist. Eine bessere Programmierlösung für C # wäre dot42 . Sowohl Mono als auch dot42 sind lizenzierte Produkte.
Persönlich würde ich empfehlen, Java mit der IntelliJ IDEA- Entwicklungsumgebung zu verwenden. Ich sage das aus 3 Gründen:
Es gibt bereits so viel Java-Code für Android. Tun Sie sich selbst einen Gefallen und erfinden Sie das Rad nicht neu.
IDEA ähnelt Visual Studio so sehr, dass es ein Kinderspiel ist, es zu lernen. Es wird von JetBrains hergestellt und der Intelli-Sense ist besser als VS.
IDEE ist kostenlos.
Ich bin seit 12 Jahren ein C # -Programmierer und habe angefangen, mit C # für Android zu entwickeln, bin aber am Ende vom Schiff gesprungen und habe die Java-Route eingeschlagen. Die Sprachen sind so ähnlich, dass Sie wirklich keine große Lernkurve bemerken.
PS Wenn Sie LINQ, Serialisierung und andere nützliche Funktionen verwenden möchten, die für C # typisch sind, müssen Sie nur nach der entsprechenden Java-Bibliothek suchen.
nette Antwort, aber was tun, wenn Android-Anwendung C # als Backend haben?
Krupal Shah
Was ist, wenn ich eine App für eine mit der Web-API erstellte Webanwendung erstellen möchte?
Renakre
Vielen Dank, Ihre Mittel, wenn wir mit Android mit Java arbeiten, dann werde ich mehr Blogs und Materialien von googeln bekommen. Erst beim Starten wird später alles gut gehört. Vielen Dank, ich bin C # -Entwickler, aber ich werde meine App mit Java starten.
Grundsätzlich handelt es sich um ein Visual Studio-Add-In, mit dem Sie Ihren C # -Code direkt in DEX-Code kompilieren können. Dies bedeutet, dass keine Laufzeitanforderung wie Mono besteht.
Ich denke nicht, dass dies der richtige Ort ist, um die Preisgestaltung zu besprechen, aber stellen Sie sicher, dass Sie die richtigen Lizenzen vergleichen. Ich möchte darauf hinweisen, dass dot42 mit einer kostenlosen Community-Lizenz für nichtkommerzielle Zwecke geliefert wird.
Frank Rem
4
Frank, du hast absolut Recht und ich muss zugeben, dass ich die Community-Lizenz nicht bemerkt habe.
Dave81
1
nett. Gibt es Kommentare, wenn Sie jemals in Betracht ziehen, C-Code für iOS zu erstellen?
Citykid
2
Das ist fantastisch! Gibt es Pläne, einen UI-Designer einzusetzen? Oder kann ich dazu ein anderes Tool verwenden? Ausgezeichnete Arbeit !
Piotr Kula
2
Derzeit gibt es solche Pläne nicht. Sie können Android Studio zum Entwerfen der Benutzeroberfläche verwenden. Sie können diese Ressourcen dann in Visual Studio importieren.
Ist es kostenlos für die kommerzielle Entwicklung? Ich möchte eine App entwickeln, die für ein Unternehmen (dessen Benutzer) bestimmt ist.
CoolArchTek
Sie haben es, so dass Sie viel davon kostenlos nutzen können. Aber es gibt eine Art Lizenzgebühr iirc
FoamyGuy
Ist Mono der einzige Weg? Gibt es OpenSource-Optionen?
CoolArchTek
5
Mono ist Open Source IIRC. Ist Ihnen auch klar, dass Sie die gesamte C # (CLR) -Laufzeit mit wenig Unterstützung von Microsoft auf eine andere Plattform portieren müssen? Es ist ein Wunder, dass es sogar Mono gibt. Google und MSFT sind direkte Konkurrenten im mobilen Bereich. C # ist eine von MSFT unterstützte Technologie. Stelle dir das vor.
Seva Alekseyev
6
Ich habe die Unity 3D-Spiele-Engine zum Entwickeln von Spielen für PC und Mobiltelefon verwendet. Wir verwenden C # in dieser Entwicklung.
Es gibt tatsächlich C # -Compiler für Android. Obwohl ich lieber Android Apps in Java entwickle, kann ich MonoForAndroid empfehlen. Weitere Informationen finden Sie unter http://xamarin.com/monoforandroid
Antworten:
Sie könnten verwenden
Mono for Android
:http://xamarin.com/monoforandroid
Eine Alternative ist
dot42
:http://www.dot42.com/
dot42 bietet eine kostenlose Community-Lizenz sowie eine professionelle Lizenz für 399 US-Dollar.
quelle
dot42 has been discontinued and is no longer supported. All sources are availabe on GitHub. The latest build is available as a binary setup.
ab dem 29.05.2015. Sie hatten einen Quelldownload und einen GitHub .Nachdem ich Mono verwendet habe, würde ich es NICHT empfehlen. Die Mono-Laufzeit wird mit Ihrer App gebündelt, sodass Ihre apk bei mehr als 6 MB aufgebläht ist. Eine bessere Programmierlösung für C # wäre dot42 . Sowohl Mono als auch dot42 sind lizenzierte Produkte.
Persönlich würde ich empfehlen, Java mit der IntelliJ IDEA- Entwicklungsumgebung zu verwenden. Ich sage das aus 3 Gründen:
Ich bin seit 12 Jahren ein C # -Programmierer und habe angefangen, mit C # für Android zu entwickeln, bin aber am Ende vom Schiff gesprungen und habe die Java-Route eingeschlagen. Die Sprachen sind so ähnlich, dass Sie wirklich keine große Lernkurve bemerken.
PS Wenn Sie LINQ, Serialisierung und andere nützliche Funktionen verwenden möchten, die für C # typisch sind, müssen Sie nur nach der entsprechenden Java-Bibliothek suchen.
quelle
Hier ist eine neue (Hinweis: in der Tech Preview-Phase): http://www.dot42.com
Grundsätzlich handelt es sich um ein Visual Studio-Add-In, mit dem Sie Ihren C # -Code direkt in DEX-Code kompilieren können. Dies bedeutet, dass keine Laufzeitanforderung wie Mono besteht.
Offenlegung: Ich arbeite für diese Firma
UPDATE: Alle Quellen befinden sich jetzt unter https://github.com/dot42
quelle
Mono Touch ist die Antwort.
http://xamarin.com/monotouch
quelle
Ich habe die Unity 3D-Spiele-Engine zum Entwickeln von Spielen für PC und Mobiltelefon verwendet. Wir verwenden C # in dieser Entwicklung.
quelle
Sie sollten etwas ausprobieren, auf dem Mono ausgeführt wird (es ist mit .NET kompatibel).
Für die Spieleentwicklung empfehle ich Unity: http://unity3d.com/
Für allgemeine Anwendungen: http://xamarin.com/monoforandroid
quelle
Es gibt tatsächlich C # -Compiler für Android. Obwohl ich lieber Android Apps in Java entwickle, kann ich MonoForAndroid empfehlen. Weitere Informationen finden Sie unter http://xamarin.com/monoforandroid
quelle