# Mac olmadan iOS uygulaması yayınlamak: Expo ve EAS

> Windows bir PC'den Expo ve EAS, iOS uygulamanı derleyip Apple'a gönderir. Mac olmadan ne çalışır, ne zorlar ve neden bir iPhone gerekir.

Orijinal sayfa: [Mac olmadan iOS uygulaması yayınlamak: Expo ve EAS](https://devoria.fr/tr/blog/mac-olmadan-ios-uygulama-yayinlamak-expo-eas)
Yazar: [Mehdi Azizi](https://devoria.fr/tr/mehdi-azizi)
Yayın: 2026-09-23
İçeriğin son gözden geçirilmesi: 2026-10-09


## Mac olmadan iOS uygulaması yayınlanabilir mi?

Evet. Uygulamanı Expo ve React Native ile geliştirirsen Mac olmadan iOS uygulaması yayınlayabilirsin. EAS Build uygulamanı Expo'nun bulutta barındırdığı Mac'lerde derler, ardından EAS Submit onu App Store Connect'e gönderir. Expo'nun dokümantasyonu bunu açıkça söylüyor: EAS Submit macOS, Linux ve Windows'ta çalışır, yani [bir iOS build'i teslim etmek için Mac'e ihtiyacın yok](https://docs.expo.dev/submit/ios/).

Buna karşılık hiçbir şeyin yerini tutamayacağı üç şey gerekiyor: [ücretli bir Apple Developer hesabı](https://devoria.fr/tr/blog/apple-gelistirici-hesabi-ucreti), uygulamanı gerçekten test etmek için bir iPhone ve App Store Connect'te sayfayı doldurmak için bir tarayıcı. Bu rehberin geri kalanı Windows bir PC'den neyin çalıştığını, neyin zorladığını ve adımların sırasını anlatıyor.

Tüm iOS uygulamalarım bu zincirden geçiyor: Expo, EAS Build, sonra EAS Submit. Solys ve TradaZen App Store'a bu şekilde çıktı. Ben Mac'te çalışıyorum ama yayınlamanın hiçbir adımı ona bağlı değil: build'ler Expo'nun bulutunda yapılıyor, Apple'a gönderim de komut satırından geçiyor.

## Expo ve EAS, Mac'in yerini nasıl tutuyor?

Neyin mümkün olduğunu anlamak için Mac'in neden zorunlu olduğunu bilmek lazım. Bir iOS uygulaması Apple'ın aracı Xcode ile derlenmeli. Xcode yalnızca macOS'ta çalışır ve ITMS-90725 reddinden kaçınmak için yeterince yeni bir sürüm olmalı. Uygulama ardından geliştirici hesabına bağlı bir sertifikayla imzalanmalı ve App Store Connect'e gönderilmeli.

Expo bu işi üç araca bölüyor:

- **Expo ve React Native**: uygulamanı JavaScript ya da TypeScript ile, herhangi bir bilgisayarda yazarsın.
- **EAS Build**: komutu PC'nden çalıştırırsın, kod Expo'nun bir Mac'ine gider, o da uygulamayı senin için derleyip imzalar. Kurmaya ya da göndermeye hazır bir dosya alırsın.
- **[EAS Submit](https://devoria.fr/tr/blog/eas-submit-ios-expo-app-store-yayinlama)**: bu build'i alıp App Store Connect'e gönderir. Apple'ın işlemesinden sonra (örneğin simgeyi kontrol eder, bkz. ITMS-90717) TestFlight'ta görünür.

Mac hâlâ zincirin içinde. Sadece artık senin Mac'in değil. Bu stack'i neden yeni başlayanlara önerdiğimi merak ediyorsan [mobil uygulama için React Native ve Expo](https://devoria.fr/tr/expertise/react-native-expo-mobil-uygulama) sayfasını oku.

## Windows bir PC'den neler yapılabilir?

### Uygulamayı kodlamak

Tüm geliştirme Windows'ta kısıtlamasız yapılır: editörün (VS Code, Cursor), Node.js, terminal. Claude ya da ChatGPT yardımıyla kod yazıyorsan da hiçbir şey değişmiyor. Bu konuda [yapay zekâ ile iOS uygulaması yapmak](https://devoria.fr/tr/blog/yapay-zeka-ile-ios-uygulamasi-yapmak) yazısını oku.

### Kod yazarken uygulamanı iPhone'unda görmek

Başlangıç için iPhone'una kurduğun Expo Go uygulaması, terminalinde gösterilen bir QR kodu okur ve projeni yükler. Her değişiklik birkaç saniyede telefonda görünür. İlk ekranlar için ideal. Mayıs 2026'dan beri [Expo Go'nun App Store sürümü SDK 54'te kalıyor](https://expo.dev/changelog/expo-go-and-app-store-may-2026): projeni bu sürümle uyumlu seçerek oluştur ya da daha yeni bir SDK için `eas go` ve TestFlight'ı kullan.

Expo Go'nun bir sınırı var: yalnızca Expo'nun sağladığı native modülleri içerir. Uygulaman içinde olmayan bir native kütüphane kullandığı anda (örneğin abonelikler için RevenueCat SDK'sı), bir development build gerekir: EAS Build ile derlenmiş, iPhone'una kurduğun kendi uygulamanın bir sürümü.

### App Store'dan geçmeden iPhone'una build kurmak

EAS dahili dağıtım (internal distribution) sunuyor. iPhone'unu `eas device:create` komutuyla kaydedersin, sonra `internal` dağıtımıyla bir build başlatırsın. Bir kurulum linki alırsın. Apple bu yöntemi sınırlıyor: [bir hesap bu şekilde yılda en fazla 100 iPhone'a dağıtım yapabilir](https://docs.expo.dev/build/internal-distribution/) ve her yeni cihaz yeni bir build ya da yeni bir imza gerektirir. Kendin ve birkaç yakının için fazlasıyla yeterli.

### Xcode olmadan sertifikaları yönetmek

İmzalama, Mac'te bile yeni başlayanların en çok takıldığı şey, gönderimde ITMS-90034 hatasına kadar gidebiliyor. EAS ile Apple hesabına komut satırından bağlanırsın ve araç [dağıtım sertifikasını ve provisioning profile'ı kendisi oluşturabilir](https://docs.expo.dev/build/setup/). Anahtar Zinciri'ni hiç açmazsın.

### Uygulamanı Apple'a gönderip yayınlamak

`eas submit --platform ios` build'ini App Store Connect'e gönderir. İki adımı `eas build` komutunun `--auto-submit` seçeneğiyle art arda da çalıştırabilirsin. Geri kalan her şey tarayıcıda olur: App Store sayfası, [ekran görüntüleri](https://devoria.fr/tr/blog/app-store-ekran-goruntusu-boyutlari-2026), gizlilik beyanları, abonelikler, TestFlight ve incelemeye gönderim. App Store Connect bir web uygulaması, Windows'ta gayet iyi çalışıyor.

## Mac olmadan neler yapılamaz (ya da daha zordur)?

### Yerel iOS simülatörü

iOS simülatörü Xcode'un parçası, bu yüzden Windows'ta çalışmaz. Pratikte sorun değil: test için iPhone'un simülatörden daha iyi. Expo Eylül 2026'da bulutta bir iOS simülatörü duyurdu, [EAS Simulator](https://expo.dev/blog/build-ios-apps-on-windows-with-cloud-simulators). Bu yazıyı yazdığım sırada hâlâ sınırlı erişimde. Herkese açılana kadar iş düzenini onun üzerine kurma.

### Native kodda hata ayıklamak

Bir çökme native koddan geliyorsa (Swift, Objective-C, yanlış yapılandırılmış bir kütüphane), Apple'ın teşhis araçları Xcode'da. Mac olmadan EAS'ın build loglarına ve kurulu uygulamanın çökmelerini raporlayan Sentry gibi bir araca bağımlı olursun. Yapılabilir ama daha yavaş. Bu yüzden ilk uygulama için Expo uyumlu ve bakımı yapılan kütüphanelerde kalmak mantıklı, bu da gönderimde ITMS-90338 reddini önler.

### Native uzantıları elle yazmak

Widget'lar, bildirim uzantıları, özel native target'lar: config plugin'ler sayesinde Expo ile mümkün, ama oluşturulan projeyi incelemek için Xcode olmadığında her hata bir build daha demek. İlk uygulama için bu özellikleri sonraya bırak.

### Yerel derleme

EAS'ın yerel build'leri (`--local` seçeneği) [Windows'ta desteklenmiyor](https://docs.expo.dev/build-reference/local-builds/). Yani PC'de iOS build'lerin Expo'nun bulutundan geçer. EAS'ın ücretsiz planı ayda sınırlı sayıda build ve bir bekleme kuyruğu içeriyor: yoğun bir çalışma haftası planlamadan önce Expo'nun fiyatlandırma sayfasındaki güncel koşulları kontrol et.

## Apple Developer hesabı: istisnasız zorunlu

Bunu aşmanın hiçbir yolu yok, büyük kuruluşların dahili uygulamalarına ayrılmış Apple Developer Enterprise Program bile değil. [Apple Developer Program üyeliği](https://devoria.fr/tr/blog/apple-developer-uyeligi-yenileme-iptal) olmadan App Store Connect yok, TestFlight yok, dahili dağıtım yok ve [App Store'a gönderim yok](https://developer.apple.com/support/compare-memberships/). Üyelik [yılda 99 $](https://developer.apple.com/help/account/membership/programs-overview/), kendi para biriminden tahsil ediliyor.

Kayıt olmadan önce iki tavsiye:

- **Bireysel hesap ile kuruluş hesabı arasında iyi seçim yap.** Bireysel hesapta App Store'da satıcı olarak senin adın görünür. Kuruluş hesabında şirketinin adı görünür, ama Apple bu durumda bir D-U-N-S numarası ve daha uzun bir doğrulama ister.
- **Birkaç gün ayır.** Hesap onayı her zaman anında olmuyor. Yayınlayacağını bildiğin anda kaydol, gönderimden bir gün önce değil.

## Test için gerçekten bir iPhone gerekiyor

Teknik olarak, hiç elinde tutmadığın bir iOS uygulamasını yayınlayabilirsin. Bunu kesinlikle önermiyorum, Apple da önermiyor: [inceleme kuralları](https://developer.apple.com/app-store/review/guidelines/) (guideline 2.1), gönderimden önce uygulamanın hatalar ve kararlılık açısından bir cihazda test edilmiş olmasını istiyor. Kullanıcılarının elinde ise sadece bu olacak: gerçek bir iPhone.

Yalnızca gerçek bir iPhone'un sana gösterdikleri:

- **Gerçek ilk açılış**, geliştirme sunucusu olmadan: açılıştaki çökmeler tam burada saklanır.
- **Uygulama içi satın almalar** test ortamında, paywall'unun doğru fiyatları gösterdiğini ve aboneliğin uygulamanın kilidini gerçekten açtığını kontrol etmek için.
- **Bildirimler, kamera, titreşimler, izinler**: başka yerlerde farklı davranırlar ya da hiç çalışmazlar.
- **Gerçek yerleşim**: çentik ya da Dynamic Island, ana ekran çubuğu, bir alanı kapatan klavye.
- **Akıcılık**: güçlü bir bilgisayar bunu çoğu zaman gizler.

Yakın tarihli ikinci el bir iPhone yeter, yeter ki Expo SDK sürümünün desteklediği bir iOS sürümünü çalıştırsın. Yapabiliyorsan farklı boyutta bir iPhone da ödünç al: büyük ekranda sorunsuz görünen bir uygulama küçük ekranda kesilebilir. Solys'te tam olarak bu yüzden ret yedim, [Apple bir uygulamayı neden reddeder](https://devoria.fr/tr/blog/apple-uygulama-reddi-neden-reddedilir) yazısında anlattım.

> Mac olmadan mümkün. iPhone olmadan ise Apple'a çalıştığını hiç görmediğin bir uygulama gönderirsin.

## Windows'tan adım adım, sırasıyla

1. **Projeni oluştur**: `npx create-expo-app` ile, ilk ekranlarını Expo Go ile test et.
2. **EAS CLI'ı kur**: `npm install -g eas-cli`, ardından `eas login` ve `eas build:configure`.
3. **Apple Developer Program'a kaydol**: projen şekillenmeye başlar başlamaz.
4. **iPhone'unu kaydet**: `eas device:create` ile, sonra bir development build başlat.
5. **Uygulama sayfanı oluştur**: App Store Connect'te, Expo yapılandırmandaki bundle identifier'ın aynısıyla.
6. **Production build'i başlat**: `eas build --platform ios` ile.
7. **Gönder**: `eas submit --platform ios` ile, sonra TestFlight'ta test et. [Uygulamanı test etmek için TestFlight](https://devoria.fr/tr/blog/testflight-iphone-uygulama-test-etme) rehberi bu adımı ayrıntılı anlatıyor.
8. **Sayfayı doldur ve [incelemeye gönder](https://devoria.fr/tr/blog/waiting-for-review-app-store-connect-durumlar)**: tarayıcıdan. Tanıtım metni ise sonradan yeni sürüm gerekmeden değişebilir.

Bu aşamada üç tuzak sık karşına çıkar. Build numarası her gönderimde artmalı: hiç düşünmemek için EAS'ın otomatik artırma özelliğini aç. Şifreleme sorusu, cevaplamadığın sürece her build'i bloke eder: bunu uygulama yapılandırmasında bir kez ve kalıcı olarak beyan edebilirsin. Ve bundle identifier her yerde aynı olmalı, yoksa EAS Submit uygulamanı bulamaz. Sonrası için, sayfadan onaya kadar, [App Store'da uygulama yayınlamak](https://devoria.fr/tr/expertise/app-storeda-uygulama-yayinlama) sayfası her adımı kapsıyor.

## İlk uygulamanı Mac olmadan ve kaybolmadan yayınla

Mac artık asıl engel değil. Asıl engeller başka yerde: kazandırma şansı olan bir uygulama seçmek, çalışan abonelikler kurmak, Apple'ın kabul edeceği bir dosya hazırlamak. [iOS Kit](https://devoria.fr/tr/kits/ios)'in kendi hızında ilerleyebileceğin dört adımlık yolu tam olarak bunu kapsıyor. Dosya tarafında [Apple Review Kit](https://devoria.fr/tr/kits/review-apple), gönderim öncesi kontrol listemi ve test eden kişi için notları bir araya getiriyor. Ana sayfa, Mac olsun olmasın, Expo ve Claude Code ile [sıfırdan başlamadan mobil uygulama yapmayı](https://devoria.fr/tr) gösteriyor.

Uygulamanın yayınlanmasına dair son karar Apple'da kalıyor ve hiçbir kit bunu garanti edemez. Sana sunabileceğim şey, kendi uygulamalarımda uyguladığım yöntem.

## Sık sorulan sorular

### Mac olmadan iOS uygulaması nasıl yayınlanır?

Expo ve React Native ile, Expo'nun barındırdığı bir Mac seninkinin yerini tutar. Herhangi bir bilgisayarda kod yazarsın, EAS Build uygulamayı bulutta derleyip imzalar, ardından EAS Submit onu App Store Connect'e gönderir. Ayrıca ücretli bir Apple Developer hesabı, sayfayı doldurmak için bir tarayıcı ve uygulamanı gerçekten test etmek için bir iPhone gerekir.

### Windows'tan iOS uygulaması yayınlamanın adımları neler?

Projeni Expo ile oluştur, EAS CLI'ı kur ve Apple Developer Program'a kaydol. iPhone'unu kaydet, bir development build başlat, sonra Expo yapılandırmandaki bundle identifier'ın aynısıyla App Store Connect sayfanı oluştur. Ardından production build'i başlat, EAS Submit ile gönder ve TestFlight'ta test et, sonra sayfayı doldurup uygulamayı tarayıcıdan incelemeye gönder.

### App Store'da uygulama yayınlamanın fiyatı ne kadar?

Apple Developer Program üyeliği yılda 99 $, kendi para biriminden tahsil ediliyor. Zorunlu: o olmadan ne App Store Connect var, ne TestFlight, ne dahili dağıtım, ne de App Store'a gönderim. Expo tarafında EAS'ın ücretsiz planı ayda sınırlı sayıda build ve bir bekleme kuyruğu içeriyor: Expo'nun fiyatlandırma sayfasındaki güncel koşulları kontrol et.

### Mac olmadan iOS uygulaması yayınlamak için iPhone gerekir mi?

Teknik olarak hayır, ama kesinlikle önermiyorum, Apple da önermiyor: inceleme kuralları (guideline 2.1), gönderimden önce uygulamanın hatalar ve kararlılık açısından bir cihazda test edilmiş olmasını istiyor. Yakın tarihli ikinci el bir iPhone yeter, yeter ki Expo SDK sürümünün desteklediği bir iOS sürümünü çalıştırsın.

### Mac olmadan iOS uygulaması nasıl test edilir?

iPhone'una Expo Go uygulamasını kur: terminalinde gösterilen bir QR kodu okuyup projeni yükler ve her değişiklik birkaç saniyede görünür. Expo Go yalnızca Expo'nun sağladığı native modülleri içerir. Uygulaman içinde olmayan bir native kütüphane (örneğin RevenueCat SDK'sı) kullandığı anda, EAS Build ile derlenmiş bir development build gerekir. Son build'i test etmek için [uygulamanı test etmek için TestFlight](https://devoria.fr/tr/blog/testflight-iphone-uygulama-test-etme) yazısını oku.

### Mac olmadan iOS geliştirmenin sınırları neler?

iOS simülatörünü yerelde kullanamazsın: Xcode'un parçası, bu yüzden Windows'ta çalışmaz. EAS'ın yerel build'leri (`--local`) Windows'ta desteklenmiyor: iOS build'lerin Expo'nun bulutundan geçer. Native kodda hata ayıklamak ve native uzantıları elle yazmak mümkün ama daha zor, çünkü Apple'ın araçları Xcode'da.


## Projen

[iOS Kit](https://devoria.fr/tr/kits/ios): Claude Code ile iPhone uygulamanı yap: uygulamalarımın başlangıç kodu, işini kontrol eden skill'ler, Apple Review, Screenshots ve ASO kitleri. 129,99 €.
