iOS app közzététele Mac nélkül: Expo és EAS útmutató
Írta: Mehdi Azizi
Frissítve: , 9 p
Windowsos PC-ről az Expo és az EAS lefordítja és elküldi az iOS appodat az Apple-nek. Mi működik Mac nélkül, mi nem, és miért kell egy iPhone.
Közzé lehet tenni egy iOS appot Mac nélkül?
Igen. Mac nélkül is közzéteheted az iOS appodat, ha Expóval és React Native-vel építed. Az EAS Build az Expo által üzemeltetett Mac gépeken, a felhőben fordítja le az appodat, az EAS Submit pedig utána elküldi az App Store Connectbe. Az Expo dokumentációja ezt egyértelműen kimondja: az EAS Submit macOS-en, Linuxon és Windowson is fut, így nincs szükséged Macre egy iOS build leszállításához.
Három dolgot viszont semmi sem pótol: egy fizetős Apple Developer fiókot, egy iPhone-t, hogy élesben teszteld az appodat, és egy böngészőt, hogy kitöltsd az adatlapot az App Store Connectben. Az útmutató további része részletezi, mi működik windowsos PC-ről, hol akadnak el a dolgok, és milyen sorrendben haladj.
Minden iOS appom ezen a láncon megy végig: Expo, EAS Build, aztán EAS Submit. A Solys és a TradaZen is így került fel az App Store-ba. Én Macen dolgozom, de a közzététel egyik lépése sem függ tőle: a buildek az Expo felhőjében készülnek, az Apple-nek pedig parancssorból megy a küldés.
Hogyan váltja ki az Expo és az EAS a Macet
Ahhoz, hogy lásd, mi lehetséges, tudnod kell, miért volt kötelező a Mac. Egy iOS appot Xcode-dal, az Apple eszközével kell lefordítani, ami csak macOS-en fut, ráadásul elég friss verzióban ahhoz, hogy elkerüld az ITMS-90725 elutasítást. Utána alá kell írni egy fejlesztői fiókodhoz kötött tanúsítvánnyal, majd elküldeni az App Store Connectbe.
Az Expo ezt a munkát három eszközre bontja:
- Expo és React Native: JavaScriptben vagy TypeScriptben írod az appot, bármilyen gépen.
- EAS Build: a PC-dről indítod a parancsot, a kód átkerül az Expo egyik Macjére, ami lefordítja és aláírja helyetted az appot. Egy telepítésre vagy beküldésre kész fájlt kapsz vissza.
- EAS Submit: fogja ezt a buildet, és elküldi az App Store Connectbe. Miután az Apple feldolgozta (és például ellenőrizte az ikont, lásd ITMS-90717), megjelenik a TestFlightban.
A Mac továbbra is ott van a láncban. Csak éppen már nem a tiéd. Ha érdekel, miért ajánlom ezt a stacket kezdőknek, olvasd el a React Native és Expo mobilapphoz oldalt.
Mi lehetséges windowsos PC-ről
Az app kódolása
A teljes fejlesztés korlátozás nélkül megy Windowson: a szerkesztőd (VS Code, Cursor), a Node.js, a terminál. Ha Claude vagy ChatGPT segítségével kódolsz, azon sem változik semmi. Erről bővebben: iOS app készítése AI-jal.
Az app megtekintése az iPhone-odon kódolás közben
Kezdésnek az iPhone-odra telepített Expo Go app beolvas egy QR-kódot a terminálodból, és betölti a projektedet. Minden módosítás pár másodpercen belül megjelenik a telefonon. Az első képernyőkhöz ideális. 2026 májusa óta az Expo Go App Store-os verziója az SDK 54-en marad: a projekt létrehozásakor válaszd a vele való kompatibilitást, vagy újabb SDK-hoz használd az eas go-t és a TestFlightot.
Az Expo Gónak van egy korlátja: csak az Expo által biztosított natív modulokat tartalmazza. Amint az appod olyan natív könyvtárat használ, ami nincs benne, például a RevenueCat SDK-ját az előfizetésekhez, development buildre lesz szükséged: ez az appod saját, EAS Builddel fordított verziója, amit az iPhone-odra telepítesz.
Build telepítése az iPhone-odra az App Store nélkül
Az EAS kínál belső terjesztést. Az eas device:create paranccsal regisztrálod az iPhone-odat, majd internal terjesztéssel indítasz egy buildet. Kapsz egy telepítési linket. Az Apple korlátozza ezt a módszert: egy fiók így évente legfeljebb 100 iPhone-ra terjeszthet, és minden új eszköz új buildet vagy új aláírást igényel. Magadnak és néhány ismerősnek bőven elég.
Tanúsítványok kezelése Xcode nélkül
Az aláírás az, ami a legtöbb kezdőt megakasztja Macen is, egészen a beküldéskor kapott ITMS-90034 hibáig. Az EAS-szel parancssorból lépsz be az Apple-fiókodba, és az eszköz maga tudja legenerálni a distribution tanúsítványt és a provisioning profile-t. A Kulcskarikát soha nem kell megnyitnod.
Az app elküldése az Apple-nek és közzététele
Az eas submit --platform ios elküldi a buildedet az App Store Connectbe. A két lépést össze is fűzheted az eas build --auto-submit opciójával. Minden más a böngészőben történik: az App Store-adatlap, a képernyőképek, az adatvédelmi nyilatkozatok, az előfizetések, a TestFlight és a felülvizsgálatra küldés. Az App Store Connect webes alkalmazás, Windowson is remekül működik.
Mi nem lehetséges (vagy nehezebb) Mac nélkül
A helyi iOS-szimulátor
Az iOS-szimulátor az Xcode része, így Windowson nem fut. A gyakorlatban ez nem nagy baj: teszteléshez az iPhone-od jobb a szimulátornál. Az Expo 2026 szeptemberében bejelentett egy felhős iOS-szimulátort, az EAS Simulatort, ami az írás pillanatában még korlátozott hozzáférésű. Amíg nem nyílik meg mindenkinek, ne építsd rá a munkafolyamatodat.
Natív kód debugolása
Ha egy összeomlás natív kódból jön (Swift, Objective-C, egy rosszul beállított könyvtár), az Apple diagnosztikai eszközei az Xcode-ban vannak. Mac nélkül az EAS buildnaplóira és egy olyan eszközre vagy utalva, mint a Sentry, ami jelenti a telepített app összeomlásait. Megoldható, csak lassabb. Ezért érdemes az első appnál karbantartott, Expo-kompatibilis könyvtáraknál maradni, ami a beküldéskori ITMS-90338 elutasítást is megelőzi.
Natív bővítmények kézi megírása
Widgetek, értesítési bővítmények, speciális natív targetek: Expóval config pluginek segítségével megoldhatók, de Xcode nélkül, amivel megvizsgálhatnád a generált projektet, minden hiba egy újabb buildbe kerül. Az első appnál hagyd ezeket későbbre.
Helyi fordítás
Az EAS helyi buildjei (--local opció) Windowson nem támogatottak. PC-n tehát az iOS buildjeid az Expo felhőjén mennek keresztül. Az EAS ingyenes csomagja havonta korlátozott számú buildet tartalmaz, várólistával: mielőtt egy intenzív munkahetet tervezel, nézd meg az aktuális feltételeket az Expo árazási oldalán.
Az Apple Developer fiók: kötelező, kivétel nélkül
Ezt semmilyen trükkel nem lehet megkerülni, még az Apple Developer Enterprise Programmal sem, ami nagy szervezetek belső appjaira van fenntartva. Apple Developer Program tagság nélkül nincs App Store Connect, nincs TestFlight, nincs belső terjesztés, és nincs beküldés az App Store-ba. A tagság évi 99 dollárba kerül, amit a saját pénznemedben vonnak le.
Két tanács, mielőtt regisztrálsz:
- Válassz jól az egyéni és a szervezeti fiók között. Egyéni fióknál a te neved jelenik meg eladóként az App Store-ban. Szervezetinél a céged neve, de ehhez az Apple D-U-N-S számot kér, és hosszabb az ellenőrzés.
- Számolj pár nappal. A fiók jóváhagyása nem mindig azonnali. Regisztrálj, amint tudod, hogy publikálni fogsz, ne a beküldés előtti napon.
Miért kell valóban egy iPhone a teszteléshez
Technikailag közzétehetsz egy iOS appot úgy is, hogy soha nem fogtad a kezedben. Határozottan nem ajánlom, és az Apple sem: a felülvizsgálati irányelvei (2.1-es guideline) előírják, hogy az appot beküldés előtt eszközön teszteld hibákra és stabilitásra. A felhasználóidnak pedig csak ez lesz: egy valódi iPhone.
Ezt csak egy valódi iPhone mutatja meg:
- Az első valódi indítás, fejlesztői szerver nélkül: itt bújnak meg az induláskori összeomlások.
- Az alkalmazáson belüli vásárlások tesztkörnyezetben, hogy lásd, a paywall a helyes árakat mutatja-e, és az előfizetés tényleg feloldja-e az appot.
- Az értesítések, a kamera, a rezgés, az engedélyek, amik máshol másképp vagy egyáltalán nem működnek.
- A valódi elrendezés: a notch vagy a Dynamic Island, a home sáv, a beviteli mezőt eltakaró billentyűzet.
- A gördülékenység, amit egy erős számítógép gyakran elfed.
Egy friss, használt iPhone is elég, feltéve, hogy olyan iOS-verziót futtat, amit az Expo SDK-verziód támogat. És ha teheted, kérj kölcsön egy eltérő méretű iPhone-t is: ami egy nagy kijelzőn rendben van, az egy kicsin levágódhat. Pontosan emiatt utasították el a Solyst, erről a miért utasítja el az Apple az appot cikkben írtam.
Mac nélkül lehet. iPhone nélkül viszont olyan appot küldesz az Apple-nek, amit soha nem láttál működni.
A lépések sorrendben, Windowsról
- Hozd létre a projektedet az
npx create-expo-appparanccsal, és teszteld az első képernyőket Expo Góval. - Telepítsd az EAS CLI-t az
npm install -g eas-cliparanccsal, majd futtasd azeas loginés azeas build:configureparancsot. - Regisztrálj az Apple Developer Programba, amint a projekted kezd formát ölteni.
- Regisztráld az iPhone-odat az
eas device:createparanccsal, és indíts egy development buildet. - Hozd létre az app adatlapját az App Store Connectben, ugyanazzal a bundle ID-val, mint az Expo-konfigurációdban.
- Indítsd el a production buildet az
eas build --platform iosparanccsal. - Küldd be az
eas submit --platform iosparanccsal, majd teszteld a TestFlightban. A TestFlight az app teszteléséhez útmutató részletezi ezt a lépést. - Töltsd ki az adatlapot, és küldd felülvizsgálatra a böngészőből. A promóciós szöveg később új verzió nélkül is módosítható.
Ennél a pontnál három csapda gyakran előjön. A buildszámnak minden beküldésnél nőnie kell: kapcsold be az EAS automatikus növelését, és nem kell többet foglalkoznod vele. A titkosításra vonatkozó kérdés minden buildet blokkol, amíg nem válaszolsz rá: egyszer s mindenkorra megadhatod az app konfigurációjában. A bundle ID-nak pedig mindenhol azonosnak kell lennie, különben az EAS Submit nem találja az appodat. A folytatáshoz, az adatlaptól a jóváhagyásig, az app közzététele az App Store-ban oldal minden lépést lefed.
Az első appod közzététele Mac nélkül, eltévedés nélkül
Már nem a Mac az igazi akadály. Az igazi akadályok máshol vannak: olyan appot választani, aminek van esélye pénzt hozni, működő előfizetéseket bekötni, olyan anyagot összeállítani, amit az Apple elfogad. Ezt fedi le az iOS Kit négylépéses útja, amit a saját tempódban követhetsz. Az anyaghoz az Apple Review Kit tartalmazza a beküldés előtti ellenőrzőlistámat és a tesztelőnek szóló jegyzeteket. A kezdőlapon megnézheted, hogyan készíts mobilappot a nulláról indulás nélkül Expóval és Claude Code-dal, akár van Maced, akár nincs.
A közzétételről a végső döntés az Apple-é, és ezt egyetlen kit sem garantálhatja. Amit én adhatok, az a módszer, amit a saját appjaimnál alkalmazok.
Gyakori kérdések
Hogyan tehetek közzé iOS appot Mac nélkül?
Expóval és React Native-vel egy Expo által üzemeltetett Mac helyettesíti a tiédet. Bármilyen gépen kódolsz, az EAS Build a felhőben lefordítja és aláírja az appot, majd az EAS Submit elküldi az App Store Connectbe. Ezenkívül kell egy fizetős Apple Developer fiók, egy böngésző az adatlap kitöltéséhez és egy iPhone, hogy élesben teszteld az appodat.
Milyen lépései vannak egy iOS app Windowsról történő közzétételének?
Hozd létre a projektedet Expóval, telepítsd az EAS CLI-t, és regisztrálj az Apple Developer Programba. Regisztráld az iPhone-odat, indíts egy development buildet, majd hozd létre az App Store Connect-adatlapot ugyanazzal a bundle ID-val, mint az Expo-konfigurációdban. Ezután indítsd el a production buildet, küldd be az EAS Submittel, teszteld a TestFlightban, végül töltsd ki az adatlapot, és küldd felülvizsgálatra az appot a böngészőből.
Mennyibe kerül egy app közzététele az App Store-ban?
Az Apple Developer Program tagság évi 99 dollárba kerül, amit a saját pénznemedben vonnak le. Kötelező: nélküle nincs App Store Connect, TestFlight, belső terjesztés, sem beküldés az App Store-ba. Az Expo oldalán az EAS ingyenes csomagja havonta korlátozott számú buildet tartalmaz, várólistával: nézd meg az aktuális feltételeket az Expo árazási oldalán.
Kell iPhone egy iOS app Mac nélküli közzétételéhez?
Technikailag nem, de határozottan nem ajánlom, és az Apple sem: a felülvizsgálati irányelvei (2.1-es guideline) előírják, hogy az appot beküldés előtt eszközön teszteld hibákra és stabilitásra. Egy friss, használt iPhone is elég, feltéve, hogy olyan iOS-verziót futtat, amit az Expo SDK-verziód támogat.
Hogyan tesztelhetem az iOS appomat Mac nélkül?
Telepítsd az Expo Go appot az iPhone-odra: beolvas egy QR-kódot a terminálodból, és betölti a projektedet, minden módosítás pár másodpercen belül látszik. Az Expo Go csak az Expo által biztosított natív modulokat tartalmazza. Amint az appod olyan natív könyvtárat használ, ami hiányzik belőle, például a RevenueCat SDK-ját, egy EAS Builddel fordított development buildre lesz szükséged. A végleges build teszteléséhez olvasd el a TestFlight az app teszteléséhez cikket.
Milyen korlátai vannak a Mac nélküli iOS-fejlesztésnek?
A helyi iOS-szimulátort nem használhatod: az Xcode része, így Windowson nem fut. Az EAS helyi buildjei (--local) Windowson nem támogatottak: az iOS buildjeid az Expo felhőjén mennek keresztül. A natív kód debugolása és a natív bővítmények kézi megírása lehetséges, de nehezebb, mert az Apple eszközei az Xcode-ban vannak.