skrivet av Reinder de Vries den 28 februari 2020 i apputveckling
hur kan du köra Xcode på Windows och utveckla iOS-appar med en Windows-dator? Det korta svaret är: du kan inte! Du har några alternativ att komma runt det, dock. I den här handledningen diskuterar vi hur du kan installera Xcode på Windows för att bygga iOS-appar.,
Här är vad vi kommer in i:
- hyr en Mac i molnet (börjar på $20/mo)
- kör och kompilera Swift direkt på Windows/Linux
- lära sig att koda med en snabb sandlåda
- Bygg din egen ”Hackintosh” genom att installera macOS på en dator
- kör Xcode på Windows genom att installera macOS på en virtuell maskin
- utveckla iOS-appar på Windows med kors-platform tools
- få tag på en begagnad Mac (börjar på $300)
låt oss komma till det!,för Windows: Vad & varför
Xcode för Windows: Vad & varför
Xcode är macOS-enda program, kallas en ide, som du använder för att designa, utveckla och publicera iOS-appar., Xcode IDE innehåller Swift, en kodredigerare, gränssnittsbyggare, en debugger, dokumentation, versionskontroll, verktyg för att publicera din app i App Store och mycket mer.
Xcode innehåller allt du behöver för att bygga iOS-appar, och det körs bara på macOS!
det är då problemen börjar. Du vill göra en iOS-app med din Windows-dator, men du kan inte köpa en dator eller bärbar dator med macOS förinstallerad på den. Till skillnad från Windows licensierar Apple inte operativsystemet till andra datortillverkare. Du kan bara använda macOS på en Mac.,
i själva verket, när du får en licens att använda macOS, som händer när du köper en Mac-dator, du måste gå med på att bara köra operativsystemet på Apple hårdvara. Detta begränsar dig effektivt att bara utveckla appar på en Mac.
”det är roligare att vara pirat än att gå med i flottan.”
— Steve Jobs (1983)
men… det är roligare att vara en pirat, än att gå med i flottan, eller hur? Låt oss diskutera några alternativ som låter dig köra Xcode på Windows och utveckla iOS-appar på en Windows-dator!,
hyr en Mac i molnet
ett ännu enklare sätt att få tag på macOS, om än dyrare, är att hyra en Mac ”i molnet”. Du kan arbeta med Xcode på Windows med detta tillvägagångssätt, eftersom du är i huvudsak ansluten till en Mac som är någon annanstans.
Så här fungerar det:
- någon ansluter en massa Mac-datorer till internet
- du loggar in på en av dessa Mac-datorer via en Remote Desktop Connection (RDP)
- klar!, Du kan använda denna Mac från Windows/Linux och skapa iOS-appar
– Tjänster som MacinCloud och MacStadium erbjuder prisvärda hyra-en-Mac-produkter, vanligtvis betalas ut månadsvis. Priserna börjar vanligtvis på $ 20 / månad och du kan välja mellan flera hårdvarualternativ, inklusive Mac Mini och Mac Pro.,
Starting at | Type | |
---|---|---|
MacinCloud | $20/month | Dedicated, Virtual, Server |
MacStadium | $79/month | Dedicated, Enterprise |
virtualmacosx.com | $9.,75/månad | delad (timesharing) |
Mac Cloud | $49/månad | virtuell |
flöde | Premium | dedikerad, företag |
HostMyApple | $25/månad | virtuell, dedikerad |
du ansluter till dessa molnbaserade Mac-datorer via en fjärrskrivbordsanslutning (RDP). Windows innehåller en stock Remote Desktop Klient som du kan använda, och det gör de flesta Linux-operativsystem. När du är inloggad kan du starta Xcode och börja bygga din iOS-app., På så sätt kör du effektivt Xcode på din Windows-dator!
molnbaserade Mac-datorer kommer vanligtvis i 3 smaker:
- en dedikerad Mac, vilket innebär att du får tillgång till en fysisk Mac som ligger i ett datacenter, som om du köpte en Mac i Apple Store och lade den på skrivbordet.
- en virtuell Mac, vilket innebär att du får tillgång till en virtuell Mac i ett datacenter, ungefär som VirtualBox-lösningen som nämnts tidigare. Din Mac kommer inte att köras på Apple hårdvara, men det kommer att köra macOS.
- en Mac Build Server, som är en specialiserad typ av Mac som kan användas för att sammanställa iOS-appar., Du skapar dessa appar på din Mac och instruerar sedan Byggservern att kompilera appen för dig.
en dedikerad Mac är det mest praktiska och mest kraftfulla alternativet. En virtuell Mac är OK också, men det vanligtvis inte fungerar lika bra som en fysisk Mac-dator.
att köra Xcode via en Mac i molnet har en nackdel: Du kan inte enkelt ansluta din iPhone till Xcode via USB! Med Xcode lokalt på din Mac kan du köra och felsöka din app på din egen iPhone via USB/Lightning-kabel. Detta kommer uppenbarligen inte att fungera när din Mac är i molnet…
oroa dig inte!, Det finns gott om lösningar för det:
- ett enkelt tillvägagångssätt är att köra din app på iPhone Simulator, direkt inifrån Xcode. Du kan starta iPhone Simulator i Xcode och felsöka din app med den. Detta är perfekt för utvecklingsfasen av ditt projekt.
- En alternativ lösning är verktyg som Flexihub, NoMachine och USB-Nätverket Tor. De arbetar bara med dedikerad Mac-hårdvara, och du måste ha en dedikerad IP-adress.
- Installera din iOS-app på din iPhone via TestFlight och felsöka det med ett verktyg som Bugsnag. Du kan övervaka och felsöka live kraschar i din app.,
ett intressant användningsfall för att hyra en Mac i molnet kommer från den senaste utvecklingen inom Apples hårdvara. Många designers, utvecklare och desktop-utgivare har uttryckt sin oro över Apple hårdvara släpar efter, erbjuder låg-spec datorer för ett ganska högt Pris.
om du inte vill ta din $3.000 MacBook Pro med dig i ett kafé, eller på din nästa resa till Thailand, varför inte köpa en low-end Windows eller Linux laptop, och ansluta till din Mac i molnet?, Du kan antingen vara värd för det hemma själv, Co-lokalisera det i ett datacenter, eller hyra en dedikerad molnbaserad Mac.
vill du lära dig att koda iOS-appar, men vill inte investera pengar i en Mac? Hyr en Mac i molnet under hela iOS utveckling kurs du tar! Det är ett bra sätt att bootstrap lärande iOS utveckling, och du kan alltid köpa din egen Mac senare.
lär dig att koda iOS-appar
Kom igång med Xcode och Swift
redo att komma igång med iOS-utveckling?, Lär dig att koda iOS-appar med Xcode och Swift med vår immersive iOS development course. Fungerar både på Mac och PC!
installera macOS på din Windows-dator via VirtualBox
det enklaste sättet att köra Xcode på Windows är att använda en virtuell maskin (VM).
en virtuell maskin kommer att skapa en miljö som ett operativsystem kan köra in, som om det körs på själva hårdvaran, förutom att den körs ”ovanpå” av din faktiska hårdvara och operativsystem. Du kan sedan köra Xcode normalt, eftersom det i huvudsak körs på macOS på Windows!,
det här kallas virtualisering, och det låter dig köra Windows på Linux, macOS på Windows och till och med Windows på macOS. En av fördelarna med virtualisering är att köra flera operativsystem sida vid sida, vilket är användbart för plattformsoberoende utveckling.
du behöver 2 saker att köra macOS på Windows i en VM:
- en kopia av macOS, som en installatör eller virtuell skivavbildningsfil
- ett virtuellt maskinverktyg, som VirtualBox (gratis) eller VMware (betald)
Du kan få en kopia av macOS genom att ladda ner den från App Store eller genom att låna den från en vän., Ett bra tillvägagångssätt är att söka efter virtuella skivavbilder som har macOS förinstallerade. Du kan också hitta installatörer från olika källor på internet, eller uppgradera en befintlig bild till en nyare (beta) version av macOS.
här är vad du gör härnäst:
- installera VirtualBox eller VMware
- montera macOS installer eller skivavbild
- starta VM för att starta macOS
- starta Xcode!
Du kan läsa exakt hur man i den här handledningen. De rekommenderade systemspecifikationerna är: 4-8 GB RAM, en Intel i5/i7-kompatibel CPU och minst 10 GB ledigt diskutrymme.,
Obs! användning av MacOS på icke-Apple-maskinvara strider mot Apples Licensavtal för slutanvändare (EULA). (Roligt faktum: samma EULA förbjuder användning av macOS för att tillverka missiler eller kärnvapen…)
Bygg din egen ”Hackintosh” för att köra Xcode
det mest uppenbara valet att köra Xcode på en Windows-dator är kanske att bokstavligen installera macOS på en Windows-dator…
”en plattform för att styra dem alla” har alltid varit Apples ta på världen. Mac App Store, iOS och Apple Musik är alla slutna system. Apple-entusiaster har alltid haft den integrerade Apple-upplevelsen.,
å andra sidan bygger resten av världen datorer med en ”Open Systems architecture”, där du effektivt kan blanda och matcha datorkomponenter och arkitekturer för att skapa din föredragna dator.
bygga $10.000 Spel Datorer, mid-level stationära datorer, flammande snabba ultrabooks, och $250 bärbara datorer är endast möjligt på grund av öppen hårdvara. På grund av Apples slutna system är du alltid bunden av hårdvarualternativen de ger dig.
men… vad händer om du vill köra macOS på din egen inbyggda dator?, Apple kommer inte låta dig, och din dator tillverkare kan inte installera macOS för dig, även om de ville. Eftersom macOS endast ska köras på Apple hardware!
Ange ”Hackintosh”.
en Hackintosh är en dator som kör macOS. Precis som du kan installera macOS i en virtuell maskin, eller i molnet, kan du installera macOS som startbart operativsystem på datorn. Slå på den och MacOS laddar.
Du kan också skapa en ” dual-boot, dvs ett system som både är värd för Windows och macOS. När du startar datorn kan du välja det operativsystem som startar.,
att bygga en Hackintosh kan vara en knepig övning, speciellt om du inte är bekant med PC-maskinvara och skapar anpassade installationer. Inte all hårdvara är kompatibel med macOS. Dessutom har Apple självklart skapat säkra vakter mot uppstart av macOS på maskinvara som inte stöds.
ändå är det ett bra alternativ för att köra macOS på din egen hårdvara och starta upp macOS på din Windows-dator. Kolla in hackintosh.com för mer information och steg-för-steg-guider.
namnet ”Hackintosh” kommer från det gamla varumärket Apple computers: Macintosh, kombinerat med ”hack”., Återigen, det är mot Apples EULA – men du ville vara en pirat, eller hur?
Hackintoshs dagar är nästan över, beroende på vem du frågar. Apples nyare hårdvara innehåller ett T2-chip nu. Hårdvaruspecifika chips är notoriskt svåra att efterlikna I icke-Apple-hårdvara, vilket i huvudsak innebär att du i framtiden kanske inte kan installera eller uppdatera macOS på en dator som inte har det T2-chipet.,
Swift för Windows& Linux
utvecklare som vill lära sig Swift har 2 alternativa sätt att koda Swift, bredvid att arbeta med Xcode på Windows. Swift är öppen källkod, vilket innebär att du i huvudsak kan köra den på alla system.
För närvarande kan du använda:
- Swift 5 på Ubuntu Linux 16.04 och 18.04 via de officiella bilderna
- Swift 4.1 på Windows 10 via den inofficiella swiftforwindows.github.io
Så här kan du köra Swift-kod på Linux:
- ladda ner den senaste versionen från swift.,org/download
- packa upp
.zip
på ett bekvämt läge - leta upp
swift
körbar i katalogenusr/bin
- kompilera och kör en snabb fil med
swift
Du kan också kopiera Swift-körbara filer till $PATH
, eller lägga till Swifts mapp i $PATH
, för att använda kommandot swift
var som helst på ditt system.,så här kan du köra Swift-kod på Windows:
- ladda ner den senaste versionen av Swift för Windows från den här sidan
- starta programmet och peka det på din
.swift
fil - Klicka på Kör i programmet
det verkar som om Swift för Windows-projektet inte har uppdaterats på ett tag. Det är senaste versionen som stöds är Swift 4.1., som inte skiljer sig så mycket från Swift 5 när det gäller nybörjare syntax och funktionalitet. Din körsträcka kan dock variera!
Du kan till och med köra och sammanställa Swift på $35 Raspberry Pi single-board-datorn!, Du kan ladda ner Swift 5, som har portats till ARM CPU-arkitekturen, här. Installera är lika enkelt som att peka din RPi till swift-arm repo, gör sedan sudo apt-get install swift5
och kör sedan Swift CLI med swift
. Snyggt!
utveckla iOS-appar på Windows med plattformsoberoende verktyg
plattformsoberoende verktyg är fantastisk: du kodar din app en gång, och exportera den till iOS och Android. Det kan potentiellt minska din app utvecklingstid och kosta på mitten., Flera plattformsoberoende verktyg kan du utveckla iOS-appar på en Windows-dator, eller låta dig sammanställa appen om det finns en Mac i ditt lokala nätverk.
Tja, inte så snabbt…
plattformsoberoende verktygsekosystemet är mycket stort. På ena sidan har du kompletta integrerade utvecklingsmiljöer (IDEs) som Xamarin, som låter dig bygga plattformsoberoende appar med C#.
den mellersta marken är täckt av verktyg som PhoneGap, Cordova, Ionic och Appcelerator, som låter dig bygga inbyggda appar med HTML5-komponenter., Den bortre änden innehåller mindre plattformar som React Native som låter dig skriva inbyggda appar med ett JavaScript-omslag.
det enda som sticker ut för alla plattformsoberoende verktyg är detta: de är inte nybörjare vänlig! Det är mycket lättare att få tillgång till en Mac, lära sig Swift, och bygga en enkel app, än det är att komma igång med Xamarin.
de flesta plattformsoberoende verktyg kräver att du har en grundläggande förståelse för programmering, sammanställning alternativ, och iOS och Android ekosystem. Det är något du egentligen inte har som nybörjare utvecklare!,
Efter att ha sagt det, låt oss titta på ett par alternativ:
- Om du är bekant med Windows-baserade utvecklingsverktyg och Ides, och om du redan vet hur man kodar, är det värt att kolla in Xamarin. Med Xamarin du koden applikationer i C# för flera plattformar med hjälp av Mono-och MonoTouch ramar.
- Om du är bekant med webbaserad utveckling, kolla PhoneGap eller Ionic. Du kommer att känna dig hemma med HTML 5, CSS och JavaScript., Glöm inte: en inbyggd app fungerar annorlunda än en webbplats…
- Om du är bekant med JavaScript, eller om du hellre vill lära dig att koda JavaScript än Swift, kolla in React Native. Med React Native kan du koda inbyggda appar för iOS och Android med en ”wrapper”.
välj medvetet för ett plattformsoberoende verktyg eftersom det passar ditt projekt, inte för att du tycker att ett modersmål är dåligt. Det faktum att ett alternativ inte är rätt, gör inte omedelbart ett annat alternativ bättre!,
om du inte vill gå med i det proprietära stängda Apple universe, glöm inte att många plattformsoberoende verktyg drivs av lika monopolistiska företag som Google, Facebook, Microsoft, Adobe och Amazon.
ett ofta hört argument mot plattformsoberoende verktyg är att de erbjuder begränsad tillgång till och stöd för smartphone hårdvara, och är mindre ”snappy” än sina inhemska motsvarigheter. Dessutom kommer alla plattformsoberoende verktyg kräver att du skriver plattformsspecifik kod vid ett tillfälle, särskilt om du vill koda anpassade funktioner.,
Obs! du behöver fortfarande kompilera din app med Xcode, även om du använder plattformsoberoende verktyg. De flesta plattformsoberoende verktyg förlitar sig på kommandoradsverktyg som levereras med Xcode, som en del av macOS. Du behöver också Xcode för att publicera din app i App Store.
få en begagnad Mac
Du måste fråga dig själv: varför inte få en Mac? Kanske är det enklaste alternativet att bygga iOS-appar med Xcode, i den här handledningen, köper en Mac för iOS-utveckling.,
om du inte vill mixtra med plattformsoberoende verktyg, eller hyra-a-Mac i molnet, och bara vill komma igång med iOS utveckling: få en Mac.
en enkel sökning på eBay Visar 1-3 år gamla begagnade Mac Mini ’ S för så lite som $250. Alla nyare, anständiga begagnade Mac Mini kommer att ställa dig tillbaka runt $ 450. Glöm inte att du kan få en helt ny Mac Mini för runt $800.
en bättre fråga är kanske: är en Mac Mini från 2015 tillräckligt snabb för att bygga appar med? Jag har byggt 50 + appar för iOS, Android och webben sedan 2009, och en rättvis del av dem byggdes på en 1.,2 Ghz, 8GB MacBook Air från och med 2013. Jag började LearnAppMaking.com med samma pålitliga ol ’ MacBook, och jag har kodat flera framgångsrika produktionsappar med det fram till 2018.
det har rest med mig över hela världen, från stränderna i Thailand, till flygbolag lounger, till kaféer, till kodning apps med mina knän bakom mina öron, trångt i ekonomiklass på 20.000 fot upp i luften.
Jag vill inte gå alla nostalgiska på dig, men jag lärde mig att koda på en 100 Mhz i486-dator, när linjer fortfarande började med ett nummer. Det är mycket snabbare än den som satte människan på månen, vid 46 Khz.,
så, för att säga att en Mac Mini, eller din nya 2015 MacBook Pro, är snabb nog, är en underdrift…
om du köper en begagnad Mac, se till att den stöder den senaste versionen av macOS. Xcode och iOS versioner är anslutna till MacOS versioner, så du vill köpa en Mac som stöder åtminstone de nuvarande. Du hittar max. senaste versionen av Xcode som din Mac kan köra, genom korsreferenser min macOS att köra i denna wiki med hårdvarukompatibilitet i denna wiki.
Code Swift med en Swift Sandbox
behöver du verkligen Xcode till code apps? I slutändan, ja., Men du kan definitivt lära dig Swift och code Swift utan en Mac eller Xcode!
här, kolla in det här:
ovanstående kod körs i en Swift sandbox. Sandlådan skickar Swift-koden till en webbserver, som sammanställer den och returnerar resultatet. Det är det perfekta verktyget för att snabbt spela med några snabba kod i din webbläsare!
Swift är ett open-source-språk, och det betyder att du effektivt kan köra det på vilken maskinvara som helst.
behöver du mer utrymme för din Swift-kod? Kolla in den större Swift Sandbox här!,
lär dig att koda iOS-appar
Kom igång med Xcode och Swift
redo att komma igång med iOS-utveckling? Lär dig att koda iOS-appar med Xcode och Swift med vår immersive iOS development course. Fungerar både på Mac och PC!
Ytterligare läsning
Du kan inte bygga iOS-appar utan Xcode, och du behöver macOS för att köra Xcode och en Mac för att använda macOS., Det går inte att komma runt det, förutom dessa alternativ att köra Xcode på Windows:
- hyr en Mac i molnet (börjar på $20/mo)
- kör Xcode på Windows genom att installera macOS på en virtuell maskin
- Bygg din egen ”Hackintosh” genom att installera macOS på en dator
- utveckla iOS-appar på Windows med plattformsoberoende verktyg
- ta händerna på en begagnad Mac (börjar på $300)
- lära sig att koda med en snabb sandlåda
- kör och kompilera Swift direkt på Windows/Linux
awesome., Jag vill önska dig lycka till med att bygga din iOS-app på Windows! Här är några projekt och handledning att överväga:
- hur: Xcode 11 handledning för nybörjare
- lär dig snabb programmering det enkla sättet
- skapa ett iOS-spel med Swift i Xcode
- komma igång med Xcode Playgrounds
- hur du tar din första App projekt från början till slut
- hur man: bygga en realtid chatt App med Firebase och Swift