Wie kann ich mit einem Windows-Entwicklungscomputer für das iPhone entwickeln?

1185

Gibt es eine Möglichkeit, mit dem iPhone SDK auf einem Windows-Computer zu basteln? Gibt es Pläne für eine iPhone SDK-Version für Windows?

Die einzige andere Möglichkeit, die ich mir vorstellen kann, besteht darin, ein Mac-VM-Image auf einem VMWare- Server unter Windows auszuführen , obwohl ich nicht sicher bin, wie legal dies ist.

Ryan
quelle
1
Die Nutzungsbedingungen wurden aktualisiert und C # (unter allen anderen Sprachen) ist jetzt zulässig: macgasm.net/2010/09/09/…
jjxtra
26
Wie wäre es mit macincloud.com ? :)
Salman von Abbas
3
Sie können Unity3D verwenden. Mit nur einer Entwicklung können Sie für alle mobilen Plattformen entwickeln.
ababab5
5
Oder versuchen Sie nicht, es unter Windows auszuführen: Kaufen Sie einen überholten "Mac mini". apple.com/shop/browse/home/specialdeals/mac/mac_mini oder google "buy refurbished mac mini". Schließen Sie Ihren vorhandenen Monitor an und verwenden Sie eine drahtlose Tastatur und Maus (ich verwende Logitechs, die ihren Unify USB-Empfänger verwenden).
ToolmakerSteve

Antworten:

502

Es ist sicherlich möglich, auf einem Windows-Computer zu entwickeln. Meine erste Anwendung wurde exklusiv auf dem alten Dell Precision entwickelt, den ich damals hatte :)

Es gibt drei Routen;

  1. Installieren Sie OSx86 (auch bekannt als iATKOS / Kalyway) auf einer zweiten Partition / Festplatte und einem Dual-Boot.
  2. Führen Sie Mac OS X Server unter VMWare aus (Mac OS X 10.7 (Lion) ab, lesen Sie das folgende Update).
  3. Verwenden Sie Delphi XE4 und den Macincloud-Dienst. Dies ist ein kommerzielles Toolset, aber die Unterstützung für Komponenten und Bibliotheken wächst.

Die erste Route erfordert das Ändern (oder Verwenden eines vormodifizierten) Images von Leopard, das auf einem normalen PC installiert werden kann. Dies ist nicht so schwierig, wie Sie denken, obwohl Ihr Erfolgs- / Leistungsverhältnis davon abhängt, wie genau die Hardware in Ihrem PC mit der in Mac-Hardware übereinstimmt - z. B. wenn Sie ein Core 2 Duo auf einem Intel-Motherboard mit einem NVidia ausführen Grafikkarte, die Sie lachen. Wenn Sie eine AMD-Maschine oder etwas ohne SSE3 betreiben, wird dies etwas komplizierter.

Wenn Sie eine Version von Leopard kaufen (oder bereits besitzen), ist dies eine Grauzone, da die Leopard EULA angibt, dass Sie sie nur auf einem Computer mit "Apple Labeled" ausführen dürfen. Wie viele darauf hinweisen, sind Sie wahrscheinlich abgesichert, wenn Sie einen Apple-Aufkleber auf Ihren PC kleben.

Die zweite Option ist teurer. Die EULA für die Workstation-Version von Leopard verhindert, dass sie unter Emulation ausgeführt wird. Daher wird dies in VMWare nicht unterstützt. Leopard Server kann jedoch unter Emulation ausgeführt werden und kann für Desktop-Zwecke verwendet werden. Leopard Server und VMWare sind jedoch teuer.

Wenn Sie in Option interessiert sind 1) würde ich vorschlagen , beginnend bei InsanelyMac und die OSx86 Abschnitte zu lesen.

Ich denke, Sie sollten überlegen, ob die Zeit, die Sie investieren, das Geld wert ist, das Sie sparen werden. Es war für mich, weil ich es genieße, an solchen Sachen zu basteln, und ich habe während der frühen iPhone-Betas angefangen, Monate bevor ihr App Store verfügbar wurde.

Alternativ können Sie auch einen Mac Mini mit niedriger Spezifikation bei eBay kaufen. Sie benötigen nicht viel Leistung, um das SDK auszuführen, und können es später jederzeit weiterverkaufen, wenn Sie die Entwicklung beenden oder einen besseren Mac kaufen möchten.

Update: Sie können keine virtuelle Mac OS X Client-Maschine für OS X 10.6 und früher erstellen. Apple erlaubt nicht, dass diese Client-Betriebssysteme virtualisiert werden. Ab Mac OS X 10.7 (Lion) hat Apple seine Lizenzvereinbarung in Bezug auf die Virtualisierung geändert. Quelle: VMWare KnowledgeBase

Andrew Grant
quelle
OSX läuft in einer VM, also ist es theoretisch möglich. Es gibt jedoch einige Probleme. Es ist äußerst schwierig, Netzwerkunterstützung in einer VM (ich spreche von VMWare) für OSX zu erhalten . Außerdem wird das Ganze sehr langsam sein, und ich glaube nicht, dass es darum geht, RAM darauf zu werfen.
Dmitri Nesteruk
@DennisPalmer Ich würde diesen Kauf nicht empfehlen, da die billigen Intel Core 2 Duo Mac Minis langsam sind und im Allgemeinen ohne Tastatur + Maus geliefert werden. Ich denke, dass man für 650 $ ein wirklich cooles Macbook (Pro oder Air) mit 4 GB Speicher bekommen kann.
Zakaria
@Zakaria ja, in den letzten 3 Jahren hat sich viel verändert! Ich hatte viele Tastaturen, Mäuse und Monitore herumliegen, als ich meinen Mac Mini kaufte, also war es zu der Zeit eine gute Wahl. Oh, und ich habe nur 360 Dollar dafür bezahlt. Ich habe eBay schon lange nicht mehr für gebrauchte Macbooks gekauft, aber das ist ein großartiger Vorschlag.
CoderDennis
12
Ich möchte nur darauf hinweisen, dass die Verwendung von VMWare ESX kostenlos ist, solange Sie nicht mehr als 32 GB RAM haben. Sie antworten, dass das Ausführen von VMWare sehr teuer ist: /
Mr. King
4
Nichts für ungut, aber das klingt nach viel mehr Ärger als es wert ist. Alte Macs sind bei eBay günstig und können Xcode problemlos ausführen.
Sudo
175

Xamarin ist eine gute Wahl. Es wurde von Microsoft gekauft und ist jetzt direkt in Visual Studio integriert. Sie codieren in C #. Mit all den Updates und Funktionen, die sie hinzufügen, können Sie alles tun, außer von Windows an den App Store zu senden, sogar kompilieren, erstellen und auf einem iOS-Gerät bereitstellen.

Für Spiele ist Unity 3D eine großartige Option. Der Editor kann kostenlos für die Entwicklung und sogar für den Vertrieb verwendet werden (wenn Sie einen Jahresumsatz von weniger als 100.000 USD haben). Unity unterstützt iOS, Android und die meisten anderen Plattformen. Es ist möglicherweise möglich, die "Cloud Build" -Funktion von Unity zu verwenden, um zu vermeiden, dass ein Mac für die Bereitstellung verwendet werden muss, obwohl Unity beim Erstellen für iOS standardmäßig tatsächlich ein Xcode-Projekt ausspuckt.

Andere Optionen:

PhoneGap (HTML / Javascript) funktioniert auch. Es ist nicht ganz so schön für Spiele, aber für normale GUI-Anwendungen ziemlich anständig.

Flutter (Dart) ist ein kostenloses plattformübergreifendes Framework für die Entwicklung mobiler Apps von Google. Schreiben Sie Ihren Code in Dart.

React Native (Javascript) ist ein weiteres beliebtes plattformübergreifendes Framework, das von Facebook erstellt wurde.

Beachten Sie Folgendes: Für alle diese Optionen kann die gesamte oder der größte Teil der Entwicklung unter Windows durchgeführt werden. Es ist jedoch weiterhin ein MacOS-Gerät erforderlich, um eine Binärdatei für die Übermittlung an den App Store zu erstellen. Eine Möglichkeit besteht darin, einen billigen MAC Mini für Ihren endgültigen Build zu erwerben.

jjxtra
quelle
Ich benutze Airplay, um ein plattformübergreifendes Spiel zu entwickeln. Die gute Nachricht ist, dass sie wahrscheinlich vollständig mit den neuen Geschäftsbedingungen für iPhone OS 4.0 kompatibel sind. Siehe airplaysdk.com/node/672
hiddentao
7
Phonegap ist großartig, aber Sie können Ihre App nicht vollständig auf einem Windows-PC entwickeln und sie dann einfach auf dem iMac signieren und auf das Beste hoffen. Sofern Ihre App nicht von der HelloWorld-Variante ist, müssen Sie sie wirklich testen und debuggen.
Wytze
4
Es gibt eine Visual Studio-Erweiterung namens Nomad, die die Entwicklung vollständig auf Ihrem PC unterstützt, indem die PhoneGap-Builds auf einen Cloud-Dienst übertragen werden.
Mark Cheverton
3
Ich glaube nicht, dass Marmelade mehr kostenlos ist, die Lizenzbedingungen haben sich geändert.
Jamie
3
Xamarian kann nur verwendet werden, wenn sich ein MAC-PC im Netzwerk befindet
149

Wenn Sie ein iPhone mit Jailbreak haben, können Sie die iPhone- GCC-Toolchain über Cydia auf dem iPhone installieren und auf diese Weise einfach die Apps auf dem iPhone kompilieren. Auf diese Weise entwickelte Apps können weiterhin im App Store eingereicht werden.

Und obwohl Herr Valdez sagte, es sei eine Grauzone (was es ist), ist Jailbreaking unglaublich einfach und ziemlich risikofrei. Ja, Ihre Garantie erlischt, aber Sie können einfach eine Wiederherstellung durchführen, und sie werden es nie erfahren.

David Pearce
quelle
14
Nur ein Update: Jailbreaking führt nicht mehr zum Erlöschen Ihrer Garantie, zumindest nicht in den USA
Sudo
3
@ 9000 Haben Sie eine Quelle? Obwohl Jailbreaking keine Verletzung des DCMA mehr darstellt (etwas, das Apple ohnehin nie durchgesetzt hat) und die Garantie möglicherweise ungültig macht oder nicht (es ist absichtlich vage), verstößt es gegen die EULA und Apple verweigert den Service für Geräte mit Jailbreak .com / kb / HT3743
Josh Hunt
1
Wie können sie den Dienst verweigern, wenn Sie das Gerät mit iTunes - Restore in den Zustand vor dem Jailbreak zurücksetzen? Sie können nicht erkennen, dass es einmal Jailbreak war
JoelFan
2
@JoelFan iOS hat möglicherweise dasselbe wie Android. ein "Flash-Ticker". Dies wird im NVRAM gespeichert und erhöht sich jedes Mal system, wenn es gelöscht wird. Dies bedeutet, dass erkannt werden kann, ob es geflasht oder gerootet wurde. iOS-Geräte haben möglicherweise dasselbe (in der Tat wäre ich überrascht, wenn sie dies nicht tun).
AStopher
6
Ich weigere mich, Herrn Valdez zu googeln. Wenn uns jemand sagen kann, wäre ich verpflichtet.
Harry Ninh
78

Bei den meisten "sogenannten Windows-Lösungen für die iOS-Entwicklung ohne Mac" muss der Mac am Ende nur signieren und an den App Store senden. Ich habe ein paar überprüft, aber nicht alle (wer hat die Zeit?)

Am Ende ist es einfach zu viel Mühe zu lernen, "wie einfach es ist, iOS ohne Objective-C zu programmieren". Sie haben viele Fehler. Das Ziel, das sie sich setzen, ist meiner Ansicht nach wirklich unerreichbar.

Außerdem müssen Sie viel Zeit damit verbringen, Objective-C-äquivalente Anweisungen einfach in einer anderen Sprache zu verwenden. Sie sehen irgendwie gleich aus, aber es gibt immer subtile Unterschiede, die Sie zusätzlich zu obj-c lernen müssen. Das macht auch noch weniger Sinn, denn jetzt muss man mehr lernen, anstatt weniger zu lernen. Wo ist also der Gewinn? Außerdem kosten sie viel, weil sie sehr schwer zu entwickeln sind.

Vielen fehlen jegliche Debugging-Fähigkeiten.

Meiner ehrlichen Meinung nach, wenn Sie ein Hardcore-iOS-Entwickler sind, dann kaufen Sie auf jeden Fall den besten Mac und lernen Sie Objective-C. Es ist teuer und braucht Zeit, aber wenn es dein Weg ist, lohnt es sich.

Für den gelegentlichen Gebrauch ist es einfacher, einen Remote-Mac-Dienst wie XCodeClub.com zu mieten

Rachel Henderson
quelle
1
Ich bin mit PhoneGap nicht vertraut genug, um eine Bewertung zu schreiben, aber ich mag die Idee: plattformübergreifende Apps, die mit den weit verbreiteten Techniken HTML5 + JavaScript geschrieben wurden.
Ignitor
1
[VirtualMacOSX.com] [1] hat Pläne für die xCode-Entwicklung ab (ab sofort) 10 US-Dollar pro Monat. Ich bin sicher, andere haben es auch. [1]: virtualmacosx.com/index.php/xcode-plans
Vertrag von Prof. Falken wurde
Ich hatte keine Ahnung, dass dieser Service überhaupt existiert. Ich wollte es nur erforschen und damit spielen und wollte vorerst aufgeben, all diese verrückten Problemumgehungen zu machen, aber das ist so viel einfacher. Toller Tipp!
Alex Beardsley
"Jetzt [...] musst du mehr lernen. Außerdem kosten sie viel [...]" ..... "kaufe den besten Mac und lerne Ziel-c. Es ist teuer und braucht Zeit [...] " Fazit: Die iOS-Entwicklung ist in beiden Fällen teuer und zeitaufwändig. ;)
Martin Schneider
55

Das SDK ist nur unter OS X verfügbar, sodass Sie einen Mac verwenden müssen. Wenn Sie keinen Mac kaufen möchten, können Sie OS X entweder auf einer virtuellen Maschine in Ihrer Windows-Box ausführen oder OS X auf Ihrem PC installieren.

Nach meiner Erfahrung ist die Lösung für virtuelle Maschinen ungewöhnlich langsam (auf einem Core2 Duo-Laptop mit 2G-RAM). Wenn Sie es versuchen möchten, suchen Sie nach dem Torrent. Es lohnt sich wahrscheinlich nicht.

Die andere Möglichkeit besteht darin, OS X auf Ihrem PC zu installieren, was üblicherweise als Hackintosh bezeichnet wird. Hackintoshs funktionieren ganz gut - mein Freund hat gerade seinen Mac verkauft, weil sein Dell Quad-Core-Hackintosh tatsächlich viel schneller als die Apple-Hardware war (und ungefähr 1/3 kostete). Hier finden Sie viele Artikel dazu. Hier erfahren Sie, wie Sie auf einem Dell Inspirion 1525-Laptop installieren: Tutorial zu hackbook pro

Natürlich stehen diese beiden Optionen wahrscheinlich im Widerspruch zu einem Lizenzierungsschema. Gehen Sie daher auf eigenes Risiko vor.

Parand
quelle
2
Hackintosh-Informationen werden ziemlich leicht veraltet. Es ist besser, den Websites zu folgen, die dem Thema gewidmet sind (wie Osxlatitude für Dell-Modelle)
Prusswan
53

Sie können WinChain verwenden

Zitieren der Projektseite:

Dies ist der einfachste Weg, um die iPhone-Toolchain auf einem Windows XP / Vista-Computer zu erstellen, der wiederum Objective-C-Quellcode, den Sie mit den UIKit-Headern (im Lieferumfang von winChain enthalten) schreiben, in eine Anwendung kompilieren kann, die Sie verwenden können auf Ihrem iPhone.

dawnerd
quelle
1
Ist dies also kostenlos und Sie können iOS-Apps entwickeln, die Sie in den Apple Store stellen können?
BlueShark
28

Sie müssen weder einen Mac besitzen noch Objective-C lernen. Sie können in verschiedenen Umgebungen entwickeln und später in Objective-C kompilieren.

Entwicklung für das iPhone und iPad durch Ausführen von OSX 10.6 (Schneeleopard)

Dieser Artikel, den einer unserer Entwickler geschrieben hat, bietet einen ziemlich umfassenden Überblick über die Installation von OS X Snow Leopard unter Windows mit iBoot, die Installation von VMware (mit Anweisungen), die Inbetriebnahme Ihrer iPhone-Entwicklungsumgebung ... und ein paar besonders wichtige Dinge. Super hilfreich für mich.

Ich hoffe, das hilft. Es verwendet Phonegap, sodass Sie auf mehreren Smartphone-Plattformen gleichzeitig entwickeln können.

Maurice
quelle
21

Sie können Tersus (kostenlos, Open Source) verwenden.

Ofer Brandes
quelle
5
Nee. Für die native App benötigen Sie noch einen Mac zum Kompilieren und Bereitstellen.
Tensaix2j
21

Ein Devkit, mit dem man iPhone-Apps in Objective-C, C++oder einfach nur C mit Visual Studio entwickeln kann:

Probieren Sie es bei iOS Build Env aus

Sie können iPhone-Apps direkt in Visual Studio (2008, 2010, Express) erstellen.

Ziemlich ordentlich, es erstellt sogar IPADateien für Ihre App nach einer erfolgreichen Kompilierung. Der Code funktioniert wie auf Geräten mit Jailbreak. Für den Rest der Welt muss die endgültige Kompilierung und Übermittlung an den App Store meines Erachtens auf einem Mac erfolgen. Trotzdem können Sie mit einer bekannten IDE entwickeln.

Priamos
quelle
19

Natürlich können Sie Objective-C-Code in den Editor oder andere Programme schreiben und ihn dann zum Kompilieren auf einen Mac verschieben.

Im Ernst, es hängt davon ab, ob Sie offizielle Anwendungen für den App Store oder Anwendungen für das iPhone mit Jailbreak entwickeln. Um offizielle Anwendungen zu schreiben, scheint das Apple iPhone SDK, für das ein Intel Mac erforderlich ist, der einzig praktikable Weg zu sein. Es gibt jedoch eine inoffizielle Toolchain zum Schreiben von Anwendungen für iPhones mit Jailbreak. Sie können es unter Linux und Windows ausführen (mit Cygwin).

Mehrdad Afshari
quelle
18

Versuchen Sie es mit macincloud.com. Sie können einen Mac mieten und über die RDP-Fernbedienung darauf zugreifen. Sie können dann mit Ihrem PC auf einen Mac zugreifen und dann Ihre Apps entwickeln.

MacDaemon
quelle
17

Sie werden bald in der Lage sein zu verwenden Adobe Flash CS 5Apps erstellen für den iPhoneauf Windows:

Flashcs 5

flashcs5 apps für iphone

NANNAV
quelle
12

Hurra! Mit dem neuesten Xamarin.iOS können Sie dies jetzt einfacher erreichen, indem Sie einen netzwerkgebundenen Mac verwenden, der die Build- und Bereitstellungsfunktionen bereitstellt.

Weitere Details finden Sie hier:

Einführung in Xamarin iOS für Visual Studio

Mark Gibaud
quelle
11

Wenn Sie möchten, dass es legitim ist, haben Sie zwei Möglichkeiten: Cloud-basierte Mac-Lösungen oder plattformübergreifende Entwicklungstools. Sie können den Hackintosh-Ansatz oder virtuelle Maschinen in Betracht ziehen, wenn Sie sich nicht für rechtliche Aspekte interessieren. Wenn Sie einen anständigen PC haben, ist das Ausführen einer virtuellen Maschine der einfachste Weg. Möglicherweise wissen Sie nie, auf welcher Hardware Treiberprobleme auf einem Hackintosh auftreten.

Ich habe all diese Ansätze ausprobiert und sie haben alle Vor- und Nachteile, aber für die zweite Gruppe fühle ich mich irgendwie schuldig. Ich entwickle Apps, um meinen Lebensunterhalt zu verdienen, und ich möchte nicht jemand anderen dafür abzocken.

Wenn Sie ein kleines Projekt erstellen, können sich Cloud-basierte Macs als nützlich erweisen. Mieten Sie es für kurze Zeit, entwickeln Sie Ihr Projekt und los geht's. Mach dir nicht die Mühe, etwas Neues zu lernen.

Wenn Ihr Projekt jedoch groß wird, scheinen plattformübergreifende Frameworks die einzige Alternative zu sein. Entscheidend ist, dass Sie mit Bedacht wählen müssen. Es gibt so viele hybride Frameworks, aber was sie tun, kann in einem Satz als "Anzeigen von Webseiten in einem App-Wrapper" zusammengefasst werden, und die negativen Erfahrungen der Entwickler mit hybriden Frameworks wirken sich auch auf native Frameworks aus.

Ich habe drei davon ausprobiert (Titan, Smartface und Xamarin) und alle behaupten, "echte native Ausgabe" zu produzieren, und meiner Meinung nach sind ihre Behauptungen korrekt. Sie müssen es selbst testen und sehen, es ist nicht einfach, das native Gefühl zu beschreiben. In einem früheren Kommentar wurde darauf hingewiesen, dass das Erlernen dieser Plattformen einige Anstrengungen erfordert. Sobald Sie sie jedoch kennengelernt haben, können Sie nicht nur iOS-Anwendungen, sondern auch Android-Anwendungen mit der gemeinsamen Codebasis entwickeln. Und natürlich sind sie viel billiger als ein Cloud-Mac. Einige von ihnen sind sogar kostenlos. Sie benötigen einen Mac nur für die Übermittlung des Geschäfts.

Wenn Sie JavaScript kennen, versuchen Sie es mit Titanium und Smartface, und wenn Sie C # kennen, versuchen Sie es mit Xamarin. Beachten Sie nur, dass Titanium für den Gerätesimulator von einem Mac abhängig ist, Smartface jedoch über eine Simulator-App für die Windows-Entwicklung verfügt und besser funktioniert als erwartet. Auf der anderen Seite benötigt Xamarin einen Mac in Ihrem Netzwerk.

OZY
quelle
9

Wenn Sie iPhone-Apps erstellen möchten, aber keinen Mac, sollten Sie http://www.pmbaty.com/iosbuildenv/ ausprobieren.

Es ermöglicht Ihnen die einfache Entwicklung nativer iOS-Apps wie XCode, die auf jedem iPhone, iPod oder iPad (mit oder ohne Jailbreak) bereitgestellt werden können.

Verwenden Sie Ihre bevorzugte IDE, um in Objective-C-, C ++ -, C- oder ARM-Assemblys wie in XCode zu codieren. ARC und Blöcke werden unterstützt.

Kompilieren Sie Ihre iPhone-Apps direkt in Visual Studio

Es funktioniert unter Windows allen Versionen (XP, 7, 8), FreeBSD und Linux

Jetzt mit iOS8-Unterstützung.

Oscar Acevedo
quelle
3
Können Sie gemäß der SO-Richtlinie Ihre Zugehörigkeit zu Ihrer empfohlenen Site offenlegen?
Sirenen
8

Interessant, dass niemand die plattformübergreifende Option wxWidgets erwähnt hat .

Es ist jedoch weniger als eine optimale Lösung.

Meiner Meinung nach besteht der geschäftlichste Weg darin, das Geld in das von Apple empfohlene Framework zu investieren. Auf diese Weise steht Ihnen eine viel größere Community von Entwicklern zur Verfügung, wenn Sie mit einem umwerfenden Problem konfrontiert sind.

Sehr objektiv
quelle
8

SIE KÖNNEN IPHONE APPS AUF WINDOWS PC ENTWICKELN. Ich habe es mit komplexen Apps geschafft. Und es funktioniert perfekt. Sie können iPhone-Apps entwickeln, ohne jemals einen Mac oder ein iPhone zu sehen.

Sie können unter Windows eine HTML-App (oder besser HTML5) mit Tools wie Sencha oder JQTouch oder mobi1 entwickeln. (Früher waren alle eine Weile frei)

Anschließend signieren Sie die App mit openSSL. Und Adobe PhoneGAP Build-Dienst zum Erstellen der IPhone-App.

Sie benötigen jedoch die iPhone-Entwicklerlizenz, um sie auf einem iPhone zu installieren. Sie benötigen jedoch zu keinem Zeitpunkt einen Mac oder ein iPhone, um es zu kompilieren, zu erstellen oder zu testen - alles, was auf dem PC erledigt wird.

Ich habe es geschafft und es funktioniert perfekt. (Aber mit Android-Reaktionsfähigkeit - nicht so schnell wie eine native IPhone-App)

Sie können auch ein Programm aus der babylonischen Zeit (ca. 300 v. Chr.) Verwenden, das C und C ++ ausführt und Libelle heißt. Wenn Ihre App über einen oder zwei Bildschirme mit eingeschränkter Interaktivität und vielen Berechnungen verfügt, wählen Sie diese. Es enthält einen Emulator. Sie kompilieren auf Knopfdruck auf das iPhone. (Ich bin mir nicht sicher, aber ich denke, Sie benötigen auf jeden Fall eine Entwicklerlizenz.)

Und dann ist da noch Xamarin. Sie entwickeln in C # mit speziellen Aufrufen von nativem Code. Sie müssen die Umwelt lernen.

pashute
quelle
Nun, Sie können eine App mit einem PC entwickeln, aber das Erstellen eines Pakets für den Apple Store erfordert entweder den Zugriff auf einen Mac oder einen Dienst von Ihrem PC aus, der diesen Teil ausmacht. Zumindest habe ich keine Pakete in den Release-Ordner bekommen, obwohl das Projekt auf Release-Build eingestellt war.
Mico
8

Schau dir das an:

Überblick

Es ist ein Projekt, das versucht, Programme, die in einer Vielzahl von Ausgangssprachen geschrieben wurden, in eine Vielzahl von Zielsprachen zu kompilieren. Einer der ersten Testfälle bestand darin, Programme in Java zu schreiben und auf einem iPhone auszuführen. Es lohnt sich, das Video auf der Website anzusehen.

Nachdem dies gesagt wurde, habe ich es nicht versucht. Das Projekt scheint ziemlich Beta zu sein und es gibt nicht viel Aktivität auf ihrer SourceForge-Site.

Some Guy
quelle
Dieses Projekt scheint tot zu sein. Die Projektwebsite beschreibt es als "derzeit in einer frühen Entwicklungsphase", und seit 2014 wurden keine Commits für das Quellcode-Repository vorgenommen.
duskwuff -inactive-
8

Sie können Intel XDK verwenden, um eine App für iOS ohne Mac zu entwickeln und zu veröffentlichen.

Klicken Sie hier für Details.

Hemant Singh Rathore
quelle
Müssen Sie die objektive C-Sprache kennen, um Intel XDK verwenden zu können?
Alfonso Fernandez-Ocampo
XDK wurde 2017 eingestellt und ist nicht mehr verwendbar.
Abenddämmerung -inaktiv-
8

Mit Oracle VirtualBox können Benutzer Mac OS X in einer virtuellen Maschine installieren. Wenn Sie damit vertraut sind, können Sie Xcode auch auf diese Weise verwenden. Dies ist legal, wenn Sie Ihren Mac in Windows "dual booten" und dann die VirtualBox unter Windows (oder Linux) installieren.

Andere Möglichkeiten sind Cross-Compiler wie Appcelerator Titanium (HTML, CSS und JavaScript) oder MonoTouch (.NET).

Peter Mortensen
quelle
1
Die Verwendung einer virtuellen Maschine ist illegal oder nicht?
Martin Erhardt
1
illegale Wege werden nicht geschätzt
techieWings
2
Auf jeden Fall legal, wenn Windows als einziges System auf Ihrem Mac ausgeführt wird.
fb55
Ich hatte eine virtuelle Maschine mit MacOS, aber ich kann meine App nicht auf einem realen Gerät
bereitstellen
7

Zwei weitere Optionen

  1. Titanium Developer - kostenlose Community Edition - Schreiben in HTML / JavaScript - Kompilieren mit Xcode (erfordert einen Mac oder eine VM)

  2. OpenPlus ELIPS Studio - Schreiben Sie in Flex, kompilieren Sie auf Xcode (erfordert einen Mac oder eine VM) - sie haben jedoch gerade erst begonnen, für ihr Produkt Gebühren zu erheben.

Ich denke, es gibt möglicherweise 'Toolchain'-Optionen für diese und einige der anderen genannten, mit denen Sie unter Windows zu Binärdateien kompilieren können, und ich habe gesehen, dass Sie eine Zip-Datei hochladen und online eine Toolchain-Kompilierung für Sie durchführen lassen können. Dies widerspricht jedoch der Apple-Lizenzierung.

Wenn ich mich nicht irre, sollte ein Produkt wie Titanium, das Xcode ausgibt / funktioniert und keine Bibliotheken von Drittanbietern / Alternativen / Einschränkungen verwendet, konform sein, da Sie letztendlich in xcode kompilieren - normaler Objective-C-Code und Bibliotheken.

Scott Szretter
quelle
6

Sie können Sentenza verwenden, um Anwendungen für das iPhone unter Windows zu erstellen. Mit Erfolg getestet. Es ist keine Lösung, aber eine gute Alternative!

KloéLo
quelle
Sentenza für iOS scheint nicht mehr zu existieren. Alles, was ich finden kann, ist sentenzadesktop.com - das für den Desktop und nicht für iOS bestimmt ist und seit 2014 nicht mehr aktualisiert wurde.
duskwuff -inactive-
6

Wie bereits erwähnt, können Sie versuchen, WinChain zu verwenden, aber wenn Sie ein Neuling sind, wird es nicht einfach.

Das iPhone SDK funktioniert unter Hackintoshes (einem normalen PC mit OS X). Ich weiß, wie ich eins habe und es tut.

Nachdem Sie eine OSX-Lizenz gekauft haben, können Sie versuchen, sie mit Boot-132 oder einem der anderen Installationsprogramme wie iDeneb auf Ihrem PC auf einem anderen Laufwerk zu installieren. Das Problem, dass Sie viel basteln müssen und die Dinge immer noch nicht ganz richtig funktionieren.

Roger Roger
quelle
6

Mit Xamarin können wir jetzt mithilfe von Xamarin Live Player iPhone-Anwendungen auf dem Windows-Computer selbst entwickeln .

Die Verwendung dieses Xamarin Live Player- Entwicklungs- / Bereitstellungs- / Debug-Zyklus kann jetzt ohne ein Apple-System durchgeführt werden.

Zum Signieren und Freigeben der App ist jedoch ein Apple-System erforderlich .

Die Referenz finden Sie hier

Ich überprüfte die Referenz nichts zweifelhaftes

Durai Amuthan.H
quelle
5

Ja, und Sie müssen Objective-C nicht lernen und keine Apple-Software und -Hardware kaufen.

Adobe hat einen Compilator aus ActionScript 3 erstellt, um für iOS zu programmieren. Und später genehmigte Apple diese Methode zur Anwendungserstellung.

Dies ist der beste Weg, um Apple-Anwendungen unter Windows oder Linux / BSD (und eine andere für MacOS-X) zu erstellen.

Eir Nym
quelle
4

Sie können OSX auf dem PC installieren, aber die Erfahrung wird nicht großartig sein und es erfordert viel Arbeit. Alternativ können Sie einen Framework- / SDK- Codenamen verwenden, der auf JAVA basiert und zum Codieren in WP8, Android, iOS unter Windows (Eclipse) mit allen umfangreichen Funktionen verwendet werden kann

Funktionsübersicht:

  1. Vollständige Android-Umgebung mit superschnellem Android-Simulator
  2. Ein iPhone / iPad-Simulator, mit dem iPhone-Apps in wenigen Minuten auf ein iPad mit großem Bildschirm übertragen werden können.
  3. Volle Unterstützung für Standard-Java-Debugging und Profilerstellung für Apps auf jeder Plattform.
  4. Einfaches Theming / Styling - Nur einen Klick entfernt

Weitere Informationen finden Sie unter Entwickeln von Android-, iOS iPhone- und WP8-Apps mit Java. Haftungsausschluss: Dies ist meine Bewertung für das Produkt

Taranfx
quelle
3

Wenn Sie eine Anwendung in einer Windows-Umgebung entwickeln möchten, gibt es eine Option. Sie können MAC OS in Ihrem Windows installieren. Der Plattformname lautet: "Niresh'MAC OS". Sie können diesen Text in Google suchen

Dann können Sie die gesamte MAC OS-Quelle herunterladen und das MAC OS einfach auf Ihrem Windows-PC installieren. Niresh kann das gesamte Betriebssystem hacken.

Hoffe das wird dir helfen.

Apfel
quelle
3

Entwickeln Sie iOS-Apps unter Windows mit plattformübergreifenden Tools

Plattformübergreifende Tools sind fantastisch: Sie codieren Ihre App einmal und exportieren sie nach iOS und Android. Dies könnte möglicherweise die Zeit und die Kosten für die App-Entwicklung halbieren. Mit mehreren plattformübergreifenden Tools können Sie iOS-Apps auf einem Windows-PC entwickeln oder die App kompilieren, wenn sich in Ihrem lokalen Netzwerk ein Mac befindet.

Na ja, nicht so schnell ...

Das plattformübergreifende Tool-Ökosystem ist sehr groß. Auf der einen Seite verfügen Sie über vollständige integrierte Entwicklungsumgebungen (Integrated Development Environments, IDEs) wie Xamarin, mit denen Sie plattformübergreifende Apps mit C # erstellen können.

Der Mittelweg wird durch Tools wie PhoneGap, Cordova, Ionic und Appcelerator abgedeckt, mit denen Sie native Apps mit HTML5-Komponenten erstellen können. Am anderen Ende befinden sich kleinere Plattformen wie React Native, mit denen Sie native Apps mit einem JavaScript-Wrapper schreiben können.

Das einzige, was bei allen plattformübergreifenden Tools auffällt, ist Folgendes: Sie sind nicht anfängerfreundlich! Es ist viel einfacher, auf einen Mac zuzugreifen, Swift zu lernen und eine einfache App zu erstellen, als mit Xamarin zu beginnen.

Für die meisten plattformübergreifenden Tools sind grundlegende Kenntnisse der Programmierung, der Kompilierungsoptionen sowie der iOS- und Android-Ökosysteme erforderlich. Das ist etwas, was Sie als Anfängerentwickler nicht wirklich haben!

Schauen wir uns dennoch einige Optionen an:

Wenn Sie mit Windows-basierten Entwicklungstools und IDEs vertraut sind und bereits wissen, wie man programmiert, lohnt es sich, Xamarin auszuprobieren. Mit Xamarin codieren Sie Apps in C # für mehrere Plattformen mithilfe der Mono- und MonoTouch-Frameworks. Wenn Sie mit der webbasierten Entwicklung vertraut sind, schauen Sie sich PhoneGap oder Ionic an. Mit HTML 5, CSS und JavaScript werden Sie sich wie zu Hause fühlen. Vergessen Sie nicht: Eine native App funktioniert anders als eine Website. Wenn Sie mit JavaScript vertraut sind oder lieber lernen möchten, JavaScript als Swift zu codieren, lesen Sie React Native. Mit React Native können Sie native Apps für iOS und Android mithilfe eines „Wrappers“ codieren. Wählen Sie immer bewusst plattformübergreifende Tools, da dies eine clevere Option ist und nicht, weil Sie der Meinung sind, dass eine native Plattformsprache schlecht ist. Die Tatsache, dass eine Option nicht richtig ist, macht eine andere Option nicht sofort schlauer!

Wenn Sie nicht dem proprietären geschlossenen Apple-Universum beitreten möchten, vergessen Sie nicht, dass viele plattformübergreifende Tools von ebenso bösen Unternehmen wie Google, Facebook, Microsoft, Adobe und Amazon betrieben werden.

Ein häufig gehörtes Argument gegen plattformübergreifende Tools ist, dass sie nur eingeschränkten Zugriff auf und Unterstützung für Smartphone-Hardware bieten und weniger „bissig“ sind als ihre nativen Kollegen. Beachten Sie, dass Sie für jedes plattformübergreifende Tool an einer Stelle plattformspezifischen Code schreiben müssen, insbesondere wenn Sie benutzerdefinierte Funktionen codieren möchten.

veerendra pratap singh
quelle
3

Wenn Sie SSH-Zugriff auf einen Mac haben, können Sie einen VNC (wie Vine VNC, der mehrere Verwendungen gleichzeitig ermöglicht - Thin Thin Client) zur Steuerung von XCode verwenden.

Dies kann nützlich sein, wenn Sie von einem Laptop aus auf einen Mac Mini zugreifen möchten oder Ihr SO Ihr MacBook belastet.

wehmütig
quelle
2

Sie können versuchen, Web-Apps für das iPhone mit HTML, JavaScript und CSS zu entwickeln. Überprüfen Sie die Informationen zu den ersten Schritten auf der Apple-Website.

Konstantin Grushetsky
quelle
Ich habe gerade eine Software namens MobiOne Studio gefunden. Wie auf der Website angegeben: "MobiOne Studio - der iPhone-App- und Web-App-Designer und das iPhone-Testcenter mit iPhone-Emulator, mit dem Sie iPhone-Benutzeroberflächen in Minuten und nicht in Tagen erstellen, anpassen und ausführen können." Vielleicht ist es hilfreich für Sie. Link: genetitec.com/mobile .
Konstantin Grushetsky