ios - Wie kann ich mit einer Windows-Entwicklungsmaschine für das iPhone entwickeln?


Gibt es eine Möglichkeit, mit dem iPhone SDK auf einem Windows-Rechner 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, ist, ein Mac-VM-Image auf einem VMWare- Server unter Windows auszuführen, obwohl ich mir nicht sicher bin, wie legal das ist.



Answers


Es ist sicherlich möglich, auf einer Windows-Maschine zu entwickeln, tatsächlich wurde meine erste Anwendung ausschließlich auf der alten Dell Precision entwickelt, die ich zu der Zeit hatte :)

Es gibt drei Routen;

  1. Installieren Sie OSx86 (aka iATKOS / Kalyway) auf einer zweiten Partition / Festplatte und Dual-Boot.
  2. Führen Sie Mac OS X Server unter VMWare aus (Mac OS X 10.7 (Lion), lesen Sie das Update unten).
  3. Verwenden Sie Delphi XE4 und den Macincloud-Dienst. Dies ist ein kommerzieller Werkzeugsatz, aber die Unterstützung für Komponenten und Bibliotheken nimmt zu.

Die erste Route erfordert das Modifizieren (oder Verwenden eines vormodifizierten) Bildes von Leopard, das auf einem normalen PC installiert werden kann. Das ist nicht so schwer, wie Sie denken würden, obwohl Ihr Erfolgs- / Aufwandsverhältnis davon abhängt, wie genau die Hardware in Ihrem PC mit der von Mac-Hardware übereinstimmt - zB wenn Sie einen Core 2 Duo auf einem Intel-Motherboard mit einem NVidia betreiben Grafikkarte du lachst. Wenn Sie eine AMD-Maschine oder etwas ohne SSE3 betreiben, wird es ein wenig mehr beteiligt.

Wenn Sie eine Version von Leopard kaufen (oder bereits besitzen), dann ist dies ein grauer Bereich, da die EULA von Leopard angibt, dass Sie sie nur auf einem "Apple Labeled" -Maschine ausführen dürfen. Wie viele zeigen, wenn Sie einen Apple-Aufkleber auf Ihrem PC stecken, sind Sie wahrscheinlich bedeckt.

Die zweite Option ist teurer. Die Endbenutzer-Lizenzvereinbarung für die Workstation-Version von Leopard verhindert, dass sie unter Emulation ausgeführt wird. Daher wird in VMWare keine Unterstützung dafür angeboten. Leopard Server kann jedoch unter Emulation betrieben werden und kann für Desktop-Zwecke verwendet werden. Leopard Server und VMWare sind jedoch teuer.

Wenn Sie an Option 1 interessiert sind, würde ich vorschlagen, bei Insanelymac zu beginnen 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 gerne mit dieser Art von Sachen bastele und ich begann während der frühen iPhone Betas, Monate bevor ihr App Store verfügbar wurde.

Alternativ können Sie einen Low-Spec-Mac Mini von eBay abholen. Sie brauchen nicht viel Pferdestärke, um das SDK auszuführen, und Sie können es jederzeit später verkaufen, wenn Sie sich entscheiden, die Entwicklung einzustellen oder einen besseren Mac zu kaufen.

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




Wenn Sie ein jailbroken iPhone haben, können Sie die iphone-gcc toolchain über Cydia auf dem iPhone installieren und auf diese Weise können Sie die Apps auf dem iPhone kompilieren. Apps, die auf diese Weise entwickelt wurden, können weiterhin im App Store eingereicht werden.

Und obwohl Herr Valdez sagte, dass es eine Grauzone ist (was es ist), ist Jailbreaking unglaublich einfach und ziemlich risikolos. Ja, es macht Ihre Garantie ungültig, aber Sie können nur eine Wiederherstellung durchführen, und sie werden es nie erfahren.




Xamarin ist jetzt meine beste Wahl. Sie werden von Microsoft gekauft und direkt in Visual Studio integriert. Sie können C # und alle hinzugefügten Updates und Funktionen verwenden. Sie können alles unter Windows ausführen, sogar die Bereitstellung kompilieren, erstellen und initiieren. Sie benötigen nur einen Mac Mini, der als Deployment Server fungiert, aber Sie müssen keinen Code darauf schreiben.

Für Spiele ist Unity 3D meine erste Wahl. Sie unterstützen iOS und die meisten anderen Plattformen. Für iOS und MAC erhalten Sie einfach den billigsten MAC Mini, den Sie finden können, um den Build zu erstellen, aber die gesamte Entwicklung kann unter Windows durchgeführt werden.

Andere Optionen:

Verwenden Sie Marmalade (früher als Airplay SDK bekannt) (für iPhone benötigen Sie immer noch einen Mac, um Ihre Anwendung zu signieren, aber das ist es, alle Entwicklung / Tests können unter Windows durchgeführt werden). Die Lizenz der niedrigsten Stufe ist jetzt kostenlos.

Marmelade SDK

PhoneGap funktioniert auch, aber ich habe festgestellt, dass es nicht ganz so schön für Spiele ist, aber es ist ziemlich ordentlich für normale GUI-Anwendungen. Auch hier benötigen Sie einen Mac, um Ihre Anwendung zu signieren und zu testen und den Nutzungsbedingungen von Apple zu entsprechen.




Die meisten "so genannten Windows-Lösungen für die iOS-Entwicklung ohne Mac" benötigen Mac am Ende nur zum Signieren und Senden an den App Store. Ich habe ein paar überprüft, nicht alle (wer hat die Zeit?)

Am Ende ist es einfach zu viel Mühe zu lernen "ihre super spezielle einfache Möglichkeit, iOS ohne Objective-C zu programmieren", sie haben viele Bugs. Wirklich ist das Ziel, das sie einstellen, aus meiner Sicht unerreichbar.

Außerdem machen sie viel Zeit damit, 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. Was auch noch weniger Sinn macht, denn jetzt muss man nicht mehr lernen, sondern mehr lernen. Wo ist der Gewinn? Auch sie kosten viel, weil sie sehr schwer zu entwickeln sind.

Viele haben keinerlei Debugging-Fähigkeiten.

Meiner ehrlichen Meinung nach, wenn Sie ein Hardcore-iOS-Entwickler sind, dann kaufen Sie sicher den besten Mac und lernen objective-c. Es ist teuer und braucht Zeit, aber wenn es dein Weg ist, ist es das wert.

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




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 seinen UIKit Headers (im Lieferumfang von winChain) schreiben, verwenden und in eine Anwendung kompilieren kann auf deinem iPhone.




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

Nach meiner Erfahrung ist die Virtual Machine Lösung unbrauchbar langsam (auf einem Core2 Duo Laptop mit 2G RAM). Wenn du Lust hast es zu versuchen, suche nach dem Torrent. Es lohnt sich wahrscheinlich nicht.

Die andere Möglichkeit besteht darin, OS X auf Ihrem PC zu installieren, was allgemein als Hackintosh bezeichnet wird. Hackintoshes funktionieren ganz gut - mein Freund hat gerade seinen Mac verkauft, weil sein Dell Quad-Core-Hackintosh tatsächlich viel schneller war als die Apple-Hardware (und etwa 1/3 gekostet hat). Sie können viele Artikel darüber finden, wie dies zu tun ist; Hier ist eine Anleitung zur Installation auf einem Dell Inspirion 1525 Laptop: hackbook pro tutorial

Natürlich sind beide Optionen wahrscheinlich gegen ein Lizenzmodell, also gehen Sie auf eigenes Risiko vor.




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

Entwickeln für das iPhone und iPad durch Ausführen von Osx 10.6 (Schneeleopard)

Dieser Artikel, den einer unserer Entwickler geschrieben hat, gibt einen ziemlich umfassenden Überblick über die Installation von OS X Snow Leopard unter Windows mit iBoot, dann die Installation von Vmware (mit Anweisungen), dann die iPhone-Entwicklungsumgebung in Schwung zu bringen ... und ein paar zusätzliche saftige Dinge. Super hilfreich für mich.

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




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







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

Schau es dir bei iOS Build env an

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

Ziemlich ordentlich, es baut sogar IPA Dateien für Ihre App nach einer erfolgreichen Kompilierung. Der Code funktioniert wie auf Jailbreak-Geräten, für den Rest des Planeten glaube ich, dass die endgültige Kompilation und Einreichung im App Store auf einem Mac erfolgen muss. Dennoch können Sie mit einer bekannten IDE entwickeln.




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

Aber im Ernst, es hängt davon ab, ob Sie offizielle Anwendungen entwickeln, um sie in den App Store zu bringen oder Anwendungen für das jailbroken iPhone zu entwickeln. Um offizielle Anwendungen zu schreiben, scheint das Apple iPhone SDK, das einen Intel Mac benötigt, der einzige praktische Weg zu sein. Es gibt jedoch eine inoffizielle Toolchain, um Anwendungen für jailbroken iPhones zu schreiben. Sie können es unter Linux und Windows (mit Cygwin) ausführen.




Versuchen Sie macincloud.com Es erlaubt Ihnen, einen Mac zu mieten und auf ihn durch RDP-Fernsteuerung zuzugreifen. Sie können dann mit Ihrem PC auf einen Mac zugreifen und dann Ihre Apps entwickeln.




Hurra! Sie können dies jetzt einfacher mit dem neuesten Xamarin.iOS durchführen, indem Sie einen Netzwerk-verbundenen Mac mit den Build- und Deployment-Funktionen verwenden.

Sehen Sie hier für mehr Details:

Einführung in Xamarin IOS für Visual Studio




Wenn Sie möchten, dass es legitim ist, haben Sie zwei Optionen, Cloud-basierte Mac-Lösungen oder plattformübergreifende Entwicklungswerkzeuge. Sie können den Hackintosh-Ansatz oder virtuelle Maschinen betrachten, wenn Sie sich nicht um legale Dinge kümmern. Wenn Sie einen anständigen PC haben, wäre das Ausführen einer virtuellen Maschine der einfachste Weg. Sie werden vielleicht nie wissen, welche Hardware Treiberprobleme auf einem Hackintosh haben wird.

Ich habe alle 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 würde niemanden dafür abzocken wollen.

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

Wenn Ihr Projekt jedoch groß wird, scheinen plattformübergreifende Frameworks die einzige Alternative zu sein. Die entscheidende Sache ist, dass Sie klug wählen müssen. Es gibt so viele hybride Frameworks, aber was sie tun, können in einem Satz zusammengefasst werden als "Anzeigen von Webseiten in einem App-Wrapper" und negative Erfahrungen von Entwicklern mit hybriden Frameworks wirken sich auch auf native Frameworks aus.

Ich habe drei davon versucht (Titanium, Smartface und Xamarin) und alle behaupten, dass sie "echte native Ausgabe" produzieren und meiner Meinung nach sind ihre Behauptungen korrekt. Sie müssen es selbst testen und sehen, es ist nicht einfach, das Gefühl der Heimat zu beschreiben. In einem früheren Kommentar wurde darauf hingewiesen, dass es einige Anstrengungen braucht, um diese Plattformen zu erlernen, aber sobald Sie sie kennen, können Sie nicht nur iOS-Anwendungen, sondern auch Android-Anwendungen entwickeln, die alle die gleiche Codebasis haben. Und natürlich sind sie viel billiger als ein Cloud-Mac. Einige von ihnen sind sogar kostenlos. Sie würden einen Mac nur für die Filialübergabe benötigen.

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







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

Es ermöglicht Ihnen, native iOS-Apps wie mit XCode auf jedem iPhone, iPod oder iPad (jailbroken oder nicht) zu entwickeln.

Verwenden Sie Ihre Lieblings-IDE zum Codieren in Objective-C-, C ++ -, C- oder ARM-Assembly, wie in XCode. ARC und Blöcke werden unterstützt.

Kompilieren Sie Ihre iPhone Apps direkt in Visual Studio

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

Jetzt mit iOS8-Unterstützung.




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

Klicken Sie hier für Details.




Schau dir das an:

Überblick

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

Mit dem gesagt, ich habe es nicht versucht. Das Projekt scheint ziemlich beta zu sein, und auf ihrer SourceForge-Site gibt es nicht viel Aktivität.




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

Es ist jedoch weniger als eine optimale Lösung.

IMHO, der geschäftlich weiseste Weg zu gehen ist, das Geld in Apples befürworteten Rahmen zu investieren. Auf diese Weise haben Sie eine viel größere Gemeinschaft von Entwicklern, mit denen Sie sich beraten können, wenn Sie sich mit einem verwirrenden Problem festgefahren fühlen.




SIE KÖNNEN IPHONE APPS AUF WINDOWS PC ENTWICKELN. Ich habe es gemacht, mit komplexen Apps. 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 (oder besser: HTML5) App entwickeln, die Tools wie Sencha oder JQTouch oder mobi1 verwendet. (Sie waren alle für eine Weile frei)

Dann verwenden Sie openSSL, um die App zu signieren. Und Adobe PhoneGAP Build Service zum Erstellen von IPhone App.

Aber Sie benötigen die iPhone Entwicklerlizenz, um es auf einem iPhone zu installieren. Aber Sie brauchen kein Mac oder Iphone, um es zu kompilieren, zu bauen oder zu testen - all das geschieht auf dem PC.

Ich habe es getan, und es funktioniert perfekt. (Aber mit Android-Reaktionszeit - nicht so schnell wie eine native IPhone App)

Sie könnten auch ein Programm aus der babylonischen Ära (ca. 300 v. Chr.) Mit C und C ++ namens Libelle verwenden. Wenn Ihre App über einen oder zwei Bildschirme mit eingeschränkter Interaktivität und vielen Berechnungen verfügt, gehen Sie darauf ein. Es enthält einen Emulator. Sie kompilieren auf Knopfdruck auf das iPhone. (Nicht sicher, aber ich denke, dass Sie in jedem Fall eine Entwicklerlizenz benötigen)

Und dann ist da noch Xamarin. Sie entwickeln in C # mit speziellen Aufrufen von systemeigenem Code. Du musst die Umgebung lernen.




Sie können Sentenza für die Erstellung von Anwendungen für das iPhone unter Windows verwenden. Mit Erfolg getestet. Es ist keine Lösung, sondern eine gute Alternative!




Zwei andere 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 gerade angefangen, für ihr Produkt zu berechnen.

Ich denke, es gibt "Toolchain" -Optionen für diese und einige der anderen, die es Ihnen ermöglichen, unter Windows zu binär zu kompilieren, und ich habe gesehen, dass Sie eine Zip-Datei hochladen können und eine Toolchain-Kompilierung für Sie online durchführen lassen. aber das geht gegen die Apple Lizenzierung.

Wenn ich mich nicht irre, sollte ein Produkt wie Titanium, das mit Xcode auskommt / arbeitet und keine Drittanbieter / alternativen / eingeschränkten Bibliotheken verwendet, in Übereinstimmung sein, da Sie letztendlich in xcode kompilieren - normaler Objective-C-Code und Bibliotheken.




Wie bereits erwähnt, können Sie versuchen, die WinChain zu verwenden, aber wenn Sie ein Anfänger-Codierer sind, wird es nicht einfach sein.

Das iPhone SDK funktioniert auf Hackintoshes (ein normaler PC mit OS X ist darauf installiert). Ich weiß, wie ich einen habe und es tut.

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




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

Adobe hat einen Compilator aus ActionScript 3 für iOS programmiert. Und später hat Apple diese Methode der Anwendungserstellung genehmigt .

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




drim.co.il bietet eine Lösung für Remote-Entwicklung auf Mac mit PC mit jedem Betriebssystem. Auf dem Client-PC ist keine Installation erforderlich.




Wenn Sie eine Anwendung in Windows-Umgebung entwickeln möchten, dann gibt es eine Option, Sie können MAC OS in Ihrem Windows-Plattform-Namen installieren: "Niresh'MAC OS", können Sie diesen Text auf Google suchen

Dann können Sie die gesamte MAC OS Source und das einfach zu installierende MAC OS auf Ihren Windows PC herunterladen, Niresh kann das gesamte Betriebssystem hacken.

Hoffe das wird dir helfen.




Sie können OSX auf PC installieren, aber Erfahrung wird nicht groß sein und es braucht viel Arbeit. Alternativ kann ein Framework / SDK Codename one verwendet werden, das auf JAVA basiert und in WP8, Android, iOS unter Windows (Eclipse) mit allen umfangreichen Funktionen programmiert werden kann

Funktionsübersicht:

  1. Volle Android-Umgebung mit super schnellem Android-Simulator
  2. Ein iPhone / iPad Simulator mit einfach zu nehmenden iPhone Apps auf großen iPad in wenigen Minuten.
  3. Volle Unterstützung für Standard-Java-Debugging, Profiling für Apps auf jeder Plattform.
  4. Einfaches Thema / Styling - Nur einen Klick entfernt

Mehr unter Entwickeln von Android, iOS iPhone, WP8 Apps mit Java Haftungsausschluss: Dies ist meine Bewertung für das Produkt




Wie viele Leute bereits geantwortet haben, ist iPhone SDK nur für OS X verfügbar, und ich glaube, Apple wird es nie für Windows freigeben. Aber es gibt mehrere alternative Umgebungen / Frameworks, die es Ihnen ermöglichen, iOS-Anwendungen zu entwickeln, sogar Pakete zu erstellen und an AppStore zu senden, sowohl mit Windows als auch mit MAC. Hier sind die beliebtesten und relativ besseren Optionen.

PhoneGap , ermöglicht die Erstellung von webbasierten Apps mit HTML / CSS / JavaScript

Xamarin , plattformübergreifende Apps in C #

Adobe AIR , Luftanwendungen mit Flash / ActionScript

Unity3D , plattformübergreifende Spielengine

Hinweis: Unity benötigt Xcode und daher OS X zum Erstellen von iOS-Projekten.




Oracle VirtualBox ermöglicht Benutzern die Installation von Mac OS X in einer virtuellen Maschine. Wenn Sie damit vertraut sind, können Sie einfach Xcode verwenden. Dies ist legal, wenn Sie Ihren Mac in Windows "dual booten" und dann die VirtualBox in Windows (oder Linux) installieren.

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




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

Dies könnte nützlich sein, wenn Sie von einem Laptop auf einen Mac Mini zugreifen möchten oder Ihre SO Ihr MacBook in Mitleidenschaft zieht.