Ako vyvíjať Reagovať natívne aplikácie pre iOS vo Windows s programom Hackintosh (dobre, tak nejako)

Ahoj stredne! Toto je môj prvý príbeh, ale rád by som sa dostal priamo do hry.

Som trochu frustrovaný, že potrebujem fyzický počítač Mac a iPhone, aby som mohol vyvíjať iOS React Native.

Mám na mysli MacBook a iPhone, mám to. A musel som zdieľať svoje repo s mojím MacBookom a potom spustiť môj React Native Builder a React Native Packager, ktorý je trochu verbálny a chromý. Boo.

Okrem toho chcem pracovať na pracovnej stanici, mám pracovnú stanicu Xeon a je smutné, že som sa musel rozlúčiť s klávesnicou a myšou, a teda s rozlúčkou s produktivitou.

Dokonca aj Xamarin ponúkol vzdialený simulátor iOS a agent na zostavenie, takže sme si mohli užiť vývoj na našom hlavnom počítači a potom stavať na našom vzdialenom prostredí Mac. A pochybujem, že tím RN bude mať vietor, aby sa to stalo.

Stlačil som teda časť svojej mozgovej sily a nakoniec vyšiel z riešenia, ktoré je veľmi, veľmi šialené, bláznivé a lenivé. A tu sú body, na ktoré som myslel:

Dobrý 1: Funguje univerzálne, na všetkých x86_64 bitových počítačoch s povolenou virtualizáciou, pretože ste postupovali jasne.

Dobrý 2: Životné prostredie môžete ľahko zlikvidovať. Môžete tiež klonovať prostredie a presunúť ho niekde inde.

Zlá 1: To, len, funguje!

Zlý 2: Neodporúčam vám spúšťať iné programy Mac mimo XCode.

Zlý 3: Neočakávajte, že procesory AMD budú v tomto oveľa bežať.

The Ugly 1: Potrebujete veľmi svalnatý, monštruózny počítač, aby ste získali iba zlomok výkonu na skutočnom počítači Mac.

Ugly 2: Žiadne hardvérové ​​zrýchlenie, preto neočakávajte spustenie a ladenie kontextu OpenGL ES.

Ak ste skutočný muž, kúpte si Mac. Inak teraz objavíme cestu k hack-in-to-sh!

(Varovanie: Praktizovanie programu Hackintosh je porušením zmluvy EULA softvéru spoločnosti Apple a hardvéru a môžete čeliť poplatkom a súdnym sporom napriek tomu, že za posledných 10 rokov nikto nebol, ale spoločnosť tak urobila, ale nie sme obmedzení čokoľvek s naším počítačom, vrátane inštalácie rôznych operačných systémov, preto sa dajte na seba a rozhodnite sa, či chcete pokračovať v krokovaní po legálnej šedej zóne)

predpoklad

Ako som už spomenul, skutočne potrebujete veľmi silný a výkonný počítač! Mám pracovnú stanicu Xeon, ale sotva to funguje dobre, predstavte si, akú nočnú moru to malo prinútiť, aby ste to zvládli.

Potrebujete tiež disk SSD, pokiaľ nemáte trpezlivosť čakať viac ako 5 minút, kým sa na pevný disk dostanete do svojho počítača Mac VM.

Počkaj minútu! VM. Hmm ... Virtuálny stroj? Hádali ste, že nie? Správne, na to potrebujeme VMWare.

Krok 1: Načítajte inštalačný obraz systému Mac

Bez tohto by sme nemohli urobiť nič ...

Ak máte priateľa, ktorý má počítač Mac, vypožičajte si jeho stroj ...

Stiahnite si macOS Sierra z App Store…

Prejdite online a nájdite rituál na ripovanie tohto inštalačného obrazu do prenosného formulára DMG / ISO.

Takýto spôsob by som nezverejnil, pretože nechcem mať žiadne problémy ~ ¯ \ _ (ツ) _ / ¯

Preneste konečný súbor DMG / ISO do svojho hlavného počítača. Samozrejme to budeme potrebovať, alebo ako ...

Krok 2: Stiahnite si VMWare Player

Pokiaľ nemáte pracovnú stanicu VMWare, ktorú väčšina z nás tak nemá, budeme musieť pokračovať v sťahovaní prehrávača VMWare Player.

Stačí nainštalovať. Nemali by to byť vôbec žiadne problémy.

Krok 3: Stiahnite si Unlocker

Dobre, toto je náš prvý hack.

VMWare v podstate uzamkol základné možnosti, ktoré bránia spusteniu OSX a EFI a vzájomnej spolupráci (pevný kód, sériový, SMB atď.) Bežiaci na ľubovoľných inštanciách virtuálnych strojov na všetkých hypervízoroch VMWare okrem VMWare Fusion.

Budeme to musieť „odomknúť“ opravou niekoľkých vecí, aby sme spustili Hackintosh.

Po stiahnutí súborov kliknutím na tlačidlo „Klonovať alebo stiahnuť“ ich rozbaľte a vyhľadajte súbory s názvom „win-install.cmd“ a „win-update-tools.cmd“.

Kliknite pravým tlačidlom myši na „win-install.cmd“ a vyberte „Spustiť ako správca“, to isté „win-update-tools.cmd“. Vyžaduje sa to na získanie prístupu do registra Windows a zastavenie služieb VMWare, aby sa vykonalo oprava.

Krok 4: Vytvorte nový virtuálny počítač

Otvorte prehrávač VMWare Player a práve v ponuke vyberte položku Vytvoriť nový virtuálny počítač.

Potom vyberte obrazový súbor inštalačného disku, ktorý ste práve preniesli.

Potom musíme vybrať „Apple Mac OS X“ a zvoliť príslušnú verziu. Napríklad tu používam macOS Sierra, takže ak používate El Capitan alebo Yosemite, bolo to „macOS 10.12“, získajte správnu verziu.

Prejdite všetky tieto možnosti. Nezabudnite nakonfigurovať váš VM, zmenil som základné počty, ale väčšinu času to bolo v poriadku pre množstvo.

Krok 5: Úprava súboru .vmx

Budeme musieť obísť obmedzenia uložené VMWare, ktoré som spomenul v kroku 3. Budeme musieť pridať položku do konfiguračného súboru virtuálneho počítača. Alebo budete čeliť základnej skládke počas spustenia VM.

Ak ste polohu nezmenili, predvolene sa nachádza v priečinku ‘~ / Documents / Virtual Machine / / .vmx '.

Otvorte ho a na koniec súboru pridajte nasledujúci text:

smc.version = „0“

Krok 6: Spustite ma

Whew, čo je to tvrdá práca. Teraz je čas uviesť inštaláciu do prevádzky.

„Ak ma založíš, nikdy nezastavím ♫

Problémy by nemali byť vôbec. Mali by ste byť schopní vidieť fantastické logo Apple.

(YMMV)

A obrazovka výberu jazyka.

Obrazovka výberu jazyka

Vyberte si vlastný jazyk. Potom budeme musieť kliknúť na Utilities-> Disk Utility. Naformátujte virtuálny disk na HFS.

Pozrite si video, ako to urobiť: https://puu.sh/w46Pj/a5a7f8ff5d.webm

Potom by sme mohli pokračovať v inštalácii. Zvyčajne to trvá asi 20 minút. Počas dlhotrvajúceho čakania si pripravte a uchopte šálku kávy a počkajte do konca. Po dokončení je naplánovaný automatický reštart a zobrazí sa uvítacia obrazovka.

Pozri v akcii: https://puu.sh/w46Pw/519687fc0d.webm

Krok 7: Nastavte ma

Uvítacia obrazovka

Dokončite to, ako obvykle s novým počítačom Mac. Nepovoľujte službu určovania polohy a zatiaľ sa neprihlasujte do služby Apple ID. Neodosielajte spoločnosti Apple žiadne údaje ani zvyšujete skrytie nastavenia hackerov.

Budeme musieť nainštalovať aj nástroje VMWare Tools. Odpojte jednotku OSX Base System do vyhľadávača. Potom kliknite na Player-> Manage-> Install VMWare Tools. Inštaláciou tohto získate obrovský nárast výkonu, ale stále sotva beží v našich očiach.

Pozrite si toto: https://puu.sh/w4a2m/314480bc99.webm

Blahoželáme! Teraz máte v ruke plne funkčný virtuálny počítač Hackintosh! Teraz prejdeme do vývojovej sekcie ...

Chystáme sa nastaviť nejaký základný softvér na našej strane hackintosh ...

Budeme potrebovať ...

Brew. Samozrejme. Pre NodeJS a NPM a Native React.

Priadza na urýchlenie inštalácie nášho balíka, pokiaľ ho nepoužívate zdieľať ako ja.

Xcode na zostavenie Reagovať pôvodného hostiteľa.

Krok 1: Nainštalujte Xcode

Potrebujete na to Apple ID, nie vývojársky, obyčajný je v poriadku.

Pozrite si videá:

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

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

Počkajte, kým sa neskončí. Ak to nebude trvať príliš dlho, máte prístup na internet prostredníctvom siete NAT. Chceli by ste si zahrať Safari alebo iné aplikácie? (Napriek hroznému výkonu)

Krok 2: Nainštalujte pivovar a uzol (a priadzu a RN)

Kliknutím na vyššie uvedený odkaz dostanete príkaz ako prvý.

Tento by mal byť jednoduchý. Ak ste nainštalovali nástroje VMWare Tools, schránka je v predvolenom nastavení obojsmerná, takže ju môžete skopírovať na stranu Windows a vyhodiť ju na stranu Mac.

Otvorte terminál a prilepte príkaz vydaný pivovarom. Ak chcete povoliť inštaláciu, zadajte svoje heslo. Všetko bude automatizované a malo by to byť menej ako 10 minút.

Zoberme si to ako príklad: https://puu.sh/w4atb/acbf000b84.webm

(Stlačením klávesu WinKey + Space otvorte vyhľadávanie Spotlight, stlačením klávesu WinKey + V prilepte)

Inštalácia uzla a NPM:

$ brew install nodejs

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

Inštalácia priadze:

$ variť inštalovať priadze

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

Inštalovať RN:

$ npm -g nainštalujte reakciu-native-cli

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

Krok 3: Zúčastnite sa na projekte

Zatiaľ som neskopíroval svoje pôvodné repo, ale namiesto toho som vytvoril nový projekt RN. Ak ste projekt presťahovali, máte všetko pripravené dokonale.

Máte dva spôsoby realizácie projektu; Metóda 1: Prejdite do priečinka projektu, kliknite na ios, otvorte xcodeproj, kliknite na tlačidlo Spustiť v Xcode IDE; Metóda 2: Prejdite do priečinka svojho projektu v termináli, zadajte „rea-native run-ios“ a potvrďte, je to hotové.

Posledný krok: Spustenie simulátora

Úspech! Funguje to perfektne! Jéj!

Mohli by ste sa pokúsiť povoliť opätovné načítanie za horúca, upraviť nejaký kód a zistiť, či sa zmení.

Potom by malo všetko fungovať ako kúzlo!

Hurá! (Pamätajte, kláves Command == kláves Windows)

Neskúšal som ich spustiť na fyzických zariadeniach, ale teoreticky potrebujete iba priechod USB a Xcode alebo iTunes by mali byť schopné vaše zariadenia rozoznať.

Takže nieto zákonnosti medzi tým, myslím, že tento Hackintosh je celkom vymyslený hack na získanie iOS vývoja vo Windows bez zakúpenia predraženého Mac Pro / MacBook Pro.

Niektorí môžu dokonca nainštalovať skutočnú distribúciu hackerov do holého kovového hardvéru, napríklad do týchto ultrabookov, Dell XPS 15 alebo ZenBook, čím sa dá dosiahnuť to isté, ale je to nebezpečnejšie a stratili ste prostredie Windows (pokiaľ nemáte povolený duálny boot - Väčšina z nás nie).

Teším sa na to, že tím RN vydá novú sadu nástrojov pre vývojárov systému Mac / Windows, aby získal lepší vývojový zážitok a zároveň používal najpohodlnejšie vlastné nástroje. Hovoria, že je to zaujímavý nápad a čaká na PR.

Pochybujem, že toto je moja odpoveď na toto. Každopádne ďakujem za prečítanie tohto článku (skôr ako tutoriál). Určite to bude trochu jednoduchšie, ak máte štedrosť, aby ste sa s vami podelili o svoj nápad, urobte to v sekcii komentárov, teším sa na vašu reakciu. Prajem vám pekný deň!

(Upravené v 13/1)

Zdravím! Myslím, že je to už dávno, čo som to napísal. Teraz som objavil úplne nový svet týkajúci sa vývoja mobilných aplikácií v systéme Hackintosh VM. Vďaka nedávnemu rozvoju produktu React Native a využívaním pripojenia Expo a host-only môžeme mať ešte sladšie vývojové prostredie, takže si konečne budete môcť vybrať hostiteľa IDE a balíčkového servera v systéme Windows.

Toto prepíše krok 3 v tutoriále, ktoré som spomenul vyššie. Predstavím vám ešte jeden trik, vďaka ktorému bude VM úplne ponorený do vývoja iOS.

V podstate potrebujete iba CRNA a najnovšiu verziu Expo / React Native (v čase písania správy to bolo 0,52), to je všetko. Ak už máte existujúcu aplikáciu zavedenú v systéme CRNA, môže to fungovať bezchybne.

Je to veľmi jednoduché. (Predpokladám, že budete používať priadzu, mala by byť podobná pre NPM). Spustite balík CRNA vo Windows pomocou PowerShell alebo CMD:

Spustiť priadzu systému Windows $
...
Ak chcete zobraziť svoju aplikáciu so skutočným obnovením, nasmerujte aplikáciu Expo na tento QR kód.
Skener QR nájdete na karte Projekty v aplikácii.

Alebo zadajte túto adresu do vyhľadávacieho panela aplikácie Expo:
exp: // : 19000
Váš telefón bude musieť byť v rovnakej lokálnej sieti ako tento počítač.
Odkazy na inštaláciu aplikácie Expo nájdete na stránke https://expo.io.
Tu sa zobrazia denníky zobrazovania vašej aplikácie. Stlačením Ctrl + C kedykoľvek zastavíte.
›Stlačením a otvorte zariadenie alebo emulátor systému Android.
 ›Stlačením q zobrazíte QR kód.
 ›Stlačením klávesu r reštartujte baliareň, alebo R reštartujte baliareň a vymažte vyrovnávaciu pamäť.
 ›Stlačením d prepnete režim vývoja. (aktuálny režim: vývoj)

Toto bude port, ktorý používame.

Potom skúste nájsť adresu hostiteľa. (Rôzne stroje majú rôzne adresy IP, YMMV)

OSXVM $ ifconfig
...
en0: flags = 8863  mtu 1500
Možnosti = b 
éter 00: 0c: 29: al: d7: 8e
inet6 fe80 :: cfe: e149: 421e: 601a% en0 predpona 64 zabezpečený rozsah 0x4
Inet 192.168.67.128 sieťovej masky 0xffffff00 vysiela 192.168.67.255
nd6 options = 201 
médium: autoselect (1000baseT )
stav: aktívny

Pre mňa je to adresa hostiteľa. Musíte však zahodiť posledný bajt a pripojiť 1.

Hostiteľská IP je tu 192.168.67.1. Najprv si to všimnite.

Potom aktivujeme tajnú omáčku od technikov spoločnosti Apple.

Počnúc XCode 9 vytvorením jednoduchého adresára v koreňovom adresári vášho Mac HD, získate prístup k internej ponuke simulátora iOS. Staršie verzie nemajú túto funkciu AFAIK.

Najskôr zatvorte všetky svoje simulátory. Potom to jednoducho napíšte do svojho terminálu.

OSXVM $ sudo mkdir / AppleInternal
(Tvoje heslo)

To je všetko! Spustením simulátora teraz skontrolujte, či je k dispozícii interné menu, a vyhľadajte toto:

V skutočnosti je to univerzálne aj pre skutočných počítačov Mac! Informácie o tejto internej ponuke nájdete v tomto článku pre médiá. Zameriavame sa však viac na režim celej obrazovky, čo je vlastne dôvod, prečo by ste mohli priniesť svoj XCode spolu so simulátorom na novú virtuálnu plochu:

Ak ste mali akýkoľvek problém s oprávnením, najmä používatelia High Sierra, budete musieť tento priečinok vytvoriť v režime obnovenia. Stačí kliknúť na Utility and Terminal, ale budete musieť premiestniť svoj hlavný Mac HD, bude to tiež fungovať.

Teraz budeme pokračovať v inštalácii programu Expo Client na (ľubovoľné z) prostredia simulátora.

Tento krok je veľmi triviálny, preto odporúčame prečítať si ho z oficiálneho dokumentu Expo:

Po nainštalovaní aplikácie Expo ju otvorte v simulátore.

Potom kliknite na znamienko „Plus“ a zadajte adresu hostiteľa. Najprv ju však musíme naformátovať na to, čo by expo mohli rozpoznať:

Formát je:

exp: // : 

Takže pre mňa to znamená: „exp: //192.168.67.1: 19000“

Kliknite na tlačidlo otvorené a ak uvidíte, že sa zväzok vytvára na strane počítača so systémom Windows Dev, potom GRATULUJEME, budete si môcť získať prostredie simulátora aplikácií. HMR však v predvolenom nastavení nie je zapnuté, ale je naživo obnovené. Ak to potrebujete, choďte na Hardware-> Shake Gesture a zmeňte ho.

Posledným krokom je aktivácia režimu celej obrazovky, aby bol ponornejší. Ak je kliknutie na položku v internej ponuke pre vás jednoduché a triviálne, stačí kliknúť na zelené tlačidlo na celej obrazovke.

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

A to je všetko! Môžete dokonca nechať pracovať spolu s Genymotionom! Toto je veľmi veľký nárast produktivity!

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

To je koniec aktualizácie. Dúfam, že ste na ceste šťastní! Expo je skutočne mocným nástrojom a musíme si ho vážiť. Neexistuje nič také ako obed zadarmo. Zvážte dary na projekt Expo. Túžia po peniazoch na údržbu projektu a zaplatenie svojho (zostaveného) servera! (Bohužiaľ neponúkli žiadny spôsob, ako to urobiť)

A, prosím, Apple, nehovorte svojmu právnemu zástupcovi, aby ma kontaktoval a dostal ma do právnych problémov.