Kuinka kehittää React Native iOS -sovelluksia Windowsissa, jossa on Hackintosh (hyvin, eräänlainen)

Hei keskisuuri! Joten tämä on ensimmäinen tarini, mutta haluaisin päästä suoraan peliin.

Olen turhautunut. Vaadin fyysistä Macia ja iPhonea iOS React Native -kehityksen toteuttamiseksi.

Tarkoitan, että minulla on MacBook ja iPhone, minulla on ne. Ja minun piti jakaa repot MacBookilleni ja ajaa sitten React Native Builder- ja React Native Packager -sovellukset, jotka ovat melko runsaita ja raakoja. Boo.

Lisäksi haluan työskennellä työasemalla, minulla on Xeon-työasema ja on surullista, että minun piti jättää hyvästit näppäimistölle ja hiirelle ja siis hyvästit tuottavuudelle.

Jopa Xamarin tarjosi etä-iOS-simulaattorin ja rakennusagentin, jotta voimme nauttia kehitystyöstä päätietokoneellamme ja sitten työntää rakennusta etä-Mac-ympäristöömme. Ja epäilen, että RN-joukkueella olisi helppoa saada se tapahtumaan.

Joten puristin osaa aivovoimasta ja lopulta tulin ratkaisuun, joka on erittäin, erittäin hassu, hullu ja laiska. Ja tässä olen ajatellut asioita:

Hyvä 1: Se toimii yleisesti kaikissa x86_64-bittisissä tietokoneissa, joissa virtualisointi on käytössä, kun olet noudattanut vaiheita selvästi.

Hyvä 2: Voit hävittää ympäristön helposti. Voit myös kloonata ympäristön ja siirtää sen jonnekin muualle.

Huono 1: Se, vain, toimii!

Huono 2: En suosittele, että suoritat muita Mac-ohjelmia XCode: n ulkopuolella.

Huono 3: Älä odota, että AMD-suorittimet toimivat paljon tämän yli.

Ruma 1: Tarvitset sitä varten erittäin lihavan, hirviömäisen tietokoneen saadaksesi vain murto-osan suorituskyvystä oikealla Macilla.

Ugly 2: Ei laitteistokiihdytystä, joten älä odota suorittavan ja virheenkorjaamalla OpenGL ES -yhteyttä sen kanssa.

Jos olet todellinen mies, hanki Mac. Muuten nyt löydämme matkan Hack-in-to-shiin!

(Varoitus: Hackintoshin harjoittelu on sekä Apple-ohjelmistojen että laitteistojen EULA-sopimuksen vastaista, ja saatat kohdata syytöksiä ja oikeusjuttuja siitä huolimatta, että kukaan ei ole ollut viimeisen 10 vuoden aikana, mutta yritys tekee, mutta emme rajoitu siihen mitä tahansa tietokoneemme kanssa, mukaan lukien eri käyttöjärjestelmien asentaminen, joten valmista itsesi ja päätä, haluatko jatkaa asettamista lailliselle harmaalle alueelle)

Edellytys

Kuten olen jo aiemmin maininnut, tarvitset todella erittäin vahvan ja tehokkaan tietokoneen! Minulla on Xeon-työasema, mutta se toimii tuskin hyvin. Kuvittele, millainen painajainen oli saada se vilistämään, eikö niin?

Tarvitset myös SSD-levyn, ellei sinulla ole kärsivällisyyttä odottaa yli viisi minuuttia päästäksesi Mac VM: ään kiintolevylläsi.

Odota hetki! VM. Hmm… virtuaalikone? Olet arvata, eikö niin? Se on totta, tarvitsemme VMWaren tähän.

Vaihe 1: Lataa Mac-asennuskuva

No, ilman tätä emme voisi tehdä mitään ...

Jos sinulla on ystävä, jolla on Mac, lainaa hänen koneesi…

Lataa macOS Sierra App Storesta ...

Mene verkkoon ja löydä rituaali kopioida asennuskuva kannettavaan DMG / ISO-muotoon.

En paljastaisi tällaista menetelmää, koska en halua saada ongelmia ~ ¯ \ _ (ツ) _ / ¯

Siirrä lopullinen DMG / ISO-tiedosto päätietokoneellesi. Tietysti tarvitsemme sitä, tai miten me ...

Vaihe 2: Lataa VMWare Player

Ellei sinulla ole VMWare-työasemaa, jota useimmilla meistä ei ole, meidän on jatkettava VMWare Playerin lataamista.

Asenna vain se. Ei pitäisi olla mitään ongelmia.

Vaihe 3: Lataa Unlocker

Okei, tämä on ensimmäinen hakkumme.

Pohjimmiltaan VMWare lukitsi keskeiset vaihtoehdot, jotka estävät OSX: n ja EFI: n suorittamisen ja yhteistyön (kovakoodi, sarja, SMB, jne.), Joka toimii kaikissa VMWare-hypervisor-ohjelmien paitsi VMWare Fusion: n virtuaalikone-ilmentymissä.

Joten meidän on "lukittava" se lukitsemalla muutamia asioita saadaksemme Hackintoshin toimimaan.

Kun olet ladannut tiedostot napsauttamalla Kloonaa tai lataa, pura paketti, etsi tiedostot nimeltä 'win-install.cmd' ja 'win-update-tools.cmd'.

Napsauta hiiren kakkospainikkeella 'win-install.cmd' ja valitse 'Suorita järjestelmänvalvojana', samoin kuin 'win-update-tools.cmd'. Tätä tarvitaan Windows-rekisterin käyttöoikeuden saamiseksi ja VMWare-palvelujen lopettamiseksi korjauksen suorittamiseksi.

Vaihe 4: Luo uusi virtuaalikone

Avaa VMWare Player ja aivan oikein valikosta Luo uusi virtuaalikone.

Valitse sitten juuri siirtämäsi asennuslevyn kuvatiedosto aiemmin.

Sitten meidän on valittava Apple Mac OS X ja valittava sopiva versio. Tässä käytän esimerkiksi macOS Sierraa, joten se oli ”macOS 10.12”, jos käytät El Capitania tai Yosemitettä, hanki oikea versio.

Mene kaikki nämä vaihtoehdot. Muista konfiguroida VM, muutin ytimen määrää, mutta suurimman osan ajasta se oli OK massalle.

Vaihe 5: .vmx-tiedoston modifiointi

Meidän on kiertävä vaiheessa 3 mainitsemani VMWaren asettamat rajoitukset. Meidän on lisättävä merkintä virtuaalikoneen määritystiedostoon. Tai kohtaat ydinjätteen VM: n käynnistämisen aikana.

Oletusarvoisesti se sijaitsee kansiossa ~ ~ Asiakirjat / Virtuaalikone / / .vmx ', jos et ole muuttanut sijaintia.

Avaa se ja lisää seuraava teksti tiedoston loppuun:

smc.version = “0”

Vaihe 6: Käynnistä minut

Whew, mikä kova työ täällä. Nyt on aika saada asennus toimimaan.

♫ Jos käynnistät minut, en koskaan lopeta ♫

Ei pitäisi olla mitään ongelmia. Sinun pitäisi voida nähdä kuvitteellinen Apple-logo.

(YMMV)

Ja kielenvalintanäyttö.

Kielen valintanäyttö

Valitse oma kieli. Sitten meidän on napsautettava Apuohjelmat-> Levytyökalu. Alusta virtuaalilevy muotoon HFS.

Katso video siitä: https://puu.sh/w46Pj/a5a7f8ff5d.webm

Sitten voimme jatkaa sen asentamista. Yleensä sen tekeminen vie noin 20 minuuttia. Valmistele ja ota itsellesi kuppi kahvia pitkäaikaisen odotuksen aikana ja odota loppuun asti. Automaattinen uudelleenkäynnistys on ajoitettu päättymisen jälkeen, ja näet aloitusruudun.

Katso toiminta: https://puu.sh/w46Pw/519687fc0d.webm

Vaihe 7: Aseta minut

Tervetuloa-näyttö

Viimeistele se kuten tavallisesti teet uuden Macin kanssa. Älä ota sijaintipalvelua käyttöön ja älä vielä kirjaudu Apple ID: hen. Älä lähetä tietoja Applelle lisäämään Hackintosh-asetusten salaamista.

Meidän on asennettava myös VMWare-työkalut. Irrota OSX-perusjärjestelmän asema etsimessä. Napsauta sitten Player-> Manage-> Install VMWare Tools. Asentamalla tämän saat suuren suorituskyvyn parannuksen, mutta silti tuskin kulkee silmissämme.

Katso tämä: https://puu.sh/w4a2m/314480bc99.webm

Onnittelut! Sinulla on nyt täysin toimiva Hackintosh-virtuaalikone kädessäsi! Siirrymme nyt kehittäjäosaan ...

Olemme asettamassa joitain tärkeitä ohjelmistoja Hackintosh-puolellemme ...

Tarvitsemme ...

Hautua. Tietysti. NodeJS: lle ja NPM: lle ja React Native: lle.

Lanka nopeuttaa paketin asennusaikaa, ellet jaa sitä kuten minä.

Xcode kääntää React Native Host.

Vaihe 1: Asenna Xcode

Sinulta tarvitaan Apple ID tähän, ei kehittäjälle, tavallinen on hieno.

Katso videot:

https://puu.sh/w4b8y/665e3fa868.webm

https://puu.sh/w4b8t/07ceee8b38.webm

Odota, kunnes se on valmis. Jos ei pitäisi kestää liian kauan, sinulla on NAT-kiinteä Internet-yhteys. Haluatko pelata Safarin tai jonkin muun sovelluksen? (Kauheasta esityksestä huolimatta)

Vaihe 2: Asenna panimo ja solmu (ja lanka ja RN)

Napsauta yllä olevaa linkkiä saadaksesi komennon ensin.

No, tämän pitäisi olla helppoa. Koska olet asentanut VMWare-työkalut, leikepöytä on oletuksena kaksisuuntainen, joten voit kopioida sen Windows-puolelle ja siirtää sen Mac-puolelle.

Avaa pääte ja liitä Brew: n antama komento. Anna salasanasi salliaksesi asennuksen. Kaikki automatisoidaan ja niiden pitäisi olla alle 10 minuutissa.

Ota tämä esimerkkinä: https://puu.sh/w4atb/acbf000b84.webm

(Paina WinKey + Space avataksesi Spotlight-haun, paina WinKey + V liittääksesi)

Solmun ja NPM: n asentaminen:

$ brew install nodejs

https://puu.sh/w4aOv/f6b6e35234.webm

Langan asentaminen:

$ brew asennuslanka

https://puu.sh/w4aOb/0eb124b1d5.webm

Asenna RN:

$ npm -g asentaa react-native-cli

https://puu.sh/w4aSC/5524d0705b.webm

Vaihe 3: Aloita projekti

Toistaiseksi en ole kopioinut alkuperäistä repoani, mutta olen sen sijaan luonut uuden RN-projektin. Jos muutit projektiasi, sinulla on kaikki asetukset täydellisesti.

Sinulla on kaksi tapaa johtaa projektiasi; Tapa 1: Siirry projektikansioon, napsauta ios, avaa xcodeproj, napsauta Käynnistä-painiketta Xcode IDE: ssä; Tapa 2: Siirry projektikansioon terminaalissa, kirjoita ”reagoi-alkuperäinen run-ios” ja näytä, se on valmis.

Viimeinen vaihe: Suorita simulaattori

Menestys! Se toimii täydellisesti! Jee!

Voit yrittää ottaa käyttöön kuumalatauksen, muokata jotakin koodia ja tarkistaa muuttuuko se.

Sen jälkeen kaiken pitäisi toimia kuin viehätys!

Hurraa! (Muista, komentonäppäin == Windows-näppäin)

En ole yrittänyt ajaa niitä fyysisillä laitteilla, mutta teoriassa tarvitset vain USB-läpäisyn, ja Xcoden tai iTunesin pitäisi pystyä tunnistamaan laitteesi.

Joten puhumattakaan niiden välisestä laillisuudesta, mielestäni tämä Hackintosh on melko hieno hakkerointi saada iOS-kehitys Windowsissa ostamatta ylihinnoiteltua Mac Prota / MacBook Prota.

Jotkut saattavat jopa asentaa todellisen Hackintosh-jakauman paljaaseen metallilaitteistoon, kuten noihin ultrakirjoihin, Dell XPS 15: een tai ZenBookiin, tällä tavoin voidaan saavuttaa sama asia, mutta se on vaarallisempaa ja menetit Windows-ympäristösi (ellei kaksoiskäynnistys ole käytössä - Suurin osa meistä ei).

Odotan innolla, että RN-joukkue julkaisee uuden työkalupakin Mac / Windows-versioille saadaksesi paremman kehityskokemuksen samalla kun käytät omia mukavimpia työkaluja. He sanovat, että se on mielenkiintoinen idea ja odottaa PR: tä.

Epäilen, onko vastaukseni tähän. Kiitos joka tapauksessa tämän artikkelin lukemisesta (enemmän kuin opetusohjelma). On varmasti jonkin verran helpompaa, jos sinulla on anteliaisuutta jakaa ideasi, tee se kommenttiosassa, odotan innolla reaktiota. Hauskaa päivää hakkideni kanssa!

(Muokattu 13/1)

Terveisiä! Luulen, että on kulunut kauan sitten, kun kirjoitin tämän. Nyt olen löytänyt kokonaan uuden maailman mobiilisovellusten kehittämisestä Hackintosh VM: ssä. React Native -yrityksen äskettäisen edistyksen ansiosta ja hyödyntämällä Expo-palvelinta ja vain isäntäyhteyttä, meillä voi olla vielä makeampi kehitysympäristö, joten voit vihdoin valita valitsemasi IDE- ja pakettipalvelimen isännöidäksi Windowsissa.

Tämä ohittaa yllä mainitun opetusohjelman vaiheen 3. Aion esitellä sinulle myös yhden tempun, jonka avulla VM on täysin syvällinen iOS-kehitykseen.

Periaatteessa tarvitset vain CRNA: n ja Expo / React Native -sovelluksen uusimman version (puhutaan kirjoittamisen aikana 0,52), siinä se on. Jos sinulla on olemassa sovellus, joka on käynnistetty CRNA: n alle, se saattaa toimia myös virheetömästi.

Se on hyvin yksinkertaista. (Oletan, että käytät lankaa, pitäisi olla samanlainen NPM: n kanssa) Käynnistä CRNA-pakkaaja Windowsissa käyttämällä PowerShell- tai CMD-ohjelmaa:

Windows $ -langan juoksun aloitus
...
Osoita Expo-sovellusta tähän QR-koodiin, jotta voit tarkastella sovellustasi suoraa uudelleenlatausta käyttämällä.
QR-skanneri löytyy sovelluksen Projektit-välilehdeltä.

Tai kirjoita tämä osoite Expo-sovelluksen hakupalkkiin:
exp: // : 19000
Puhelimesi on oltava samassa paikallisessa verkossa kuin tämä tietokone.
Löydät linkit Expo-sovelluksen asentamiseen osoitteessa https://expo.io.
Lokit sovelluksesi palvelemisesta näkyvät täällä. Pysäytä painamalla Ctrl + C milloin tahansa.
›Paina a avataksesi Android-laitteen tai emulaattorin.
 ›Paina q näyttääksesi QR-koodin.
 ›Paina r käynnistääksesi pakkaajan tai R käynnistääksesi pakkaajan ja tyhjentää välimuistin.
 ›Paina d vaihtaaksesi kehitysmuotoa. (nykyinen tila: kehitys)

Tämä on käyttämämme satama.

Yritä sitten löytää isäntäosoitteesi. (Eri koneilla on erilainen IP, YMMV)

OSXVM $ ifconfig
...
en0: liput = 8863  mtu 1500
optiot = b 
eetteri 00: 0c: 29: a1: d7: 8e
inet6 fe80 :: cfe: e149: 421e: 601a% en0 etuliite 64 suojattu laajuus 0x4
inet 192.168.67.128 netmaski 0xffffff00 lähetys 192.168.67.255
nd6-asetukset = 201 
media: automaattinen valinta (1000baseT )
tila: aktiivinen

Minulle tämä on isäntäosoite. Mutta sinun on hylättävä viimeinen tavu ja lisättävä 1.

Joten isäntä-IP on täällä 192.168.67.1. Tee siitä muistiinpano ensin.

Sitten aktivoimme Apple-insinöörien tekemän salaisen kastikkeen.

Alkaen XCode 9: stä, luomalla yksinkertainen hakemisto Mac HD: n juureen, pääset iOS-simulaattorin sisäiseen valikkoon. Vanhemmissa versioissa ei ole tätä ominaisuutta AFAIK.

Sulje ensin kaikki simulaattorisi. Kirjoita sitten tämä terminaaliin.

OSXVM $ sudo mkdir / AppleInternal
(Salasanasi)

Se siitä! Tarkista nyt, onko sisäistä valikkoa käynnistämällä simulaattori ja etsi tätä:

Itse asiassa tämä on universaalia myös oikeille Macille! Tietoja tästä sisäisestä valikosta, katso tämä Medium-artikkeli. Olemme kuitenkin keskittyneet enemmän koko näytön tilaan, mikä on tosiasiallinen syy siihen, että voit viedä XCodesi yhdessä simulaattorin kanssa uuteen virtuaaliseen työpöydälle:

Jos sinulla oli jokin lupaongelmista, etenkin High Sierra -käyttäjät, sinun on luotava tämä kansio palautustilassa. Napsauta vain Apuohjelma ja pääte, mutta joudut siirtämään Main Mac HD -laitteen, se toimii myös.

Nyt jatkamme Expo Client -sovelluksen asentamista (mihin tahansa) simulaattoriympäristöön.

Tämä vaihe on hyvin vähäinen, joten suosittelen, että luet tämän Expoon virallisesta asiakirjasta:

Kun Expo-sovellus on asennettu, avaa se Simulaattorissa.

Napsauta sitten Plus ja kirjoita isäntäosoitteesi, mutta ensin meidän on alustettava se mihin expo voi tunnistaa:

Muoto on:

exp: // : 

Joten minulle se on: “exp: //192.168.67.1: 19000”

Napsauta avaa, ja jos näet paketin rakennettavan Windows Dev PC -puhelimella, ONNITTELUT, voit saada itsesi sovellussimulaattoriympäristön. HMR ei ole kuitenkaan päällä, mutta on Live Reload, oletuksena. Jos tarvitset sitä, mene Laitteisto-> Ravista ele ja vaihda se.

Viimeinen vaihe on aktivoida koko näytön tila, jotta se olisi syvällisempi. Jos napsautat sisäisessä valikossa olevaa kohtaa sinulle helppoa ja triviaalia, napsauta vain vihreää koko näytön painiketta.

https://giant.gfycat.com/AncientPepperyAdamsstaghornedbeetle.mp4

Ja siinä kaikki! Voit jopa tehdä Genymotion-työtä rinnalla! Tämä on erittäin suuri lisäys tuottavuudelle!

https://giant.gfycat.com/EnergeticUltimateAntlion.mp4

Se on päivityksen loppu. Toivottavasti olet onnellinen matkalla! Expo on todellakin tehokas työkalu, ja meidän on vaalia sitä. Ilmaista lounasta ei ole olemassa. Harkitse lahjoituksia Expo-projektille. He ovat innokkaita rahaa ylläpitääkseen hanketta ja maksaakseen (rakentaa) palvelimelleen! (Valitettavasti he eivät tarjonneet mitään menetelmää tämän tekemiseen)

Ja hyvä, Apple, älä sano asianajajallesi yhteyttä minuun ja saat minut juridisiin ongelmiin.