Ana Sayfa / Blog / App Store review’dan dönmemek için 12 submission’dan öğrendiklerim

App Store review’dan dönmemek için 12 submission’dan öğrendiklerim

Her review reddedilmesi 3 gün gecikme. 12 uygulamada 40+ submission yaptım, en çok hangi sebeplerle reddedildim ve nasıl engelledim.

App Store Connect’te “Rejected” mail’i gelmek her iOS developer’ın en sevmediği andır. 3 gün daha bekleyeceksin, o arada launch planı kayıyor, müşteri soru soruyor. 12 uygulamada 40+ submission yaptım ve birkaç defa reddedildim. Aşağıdakiler en çok karşılaştığım sebepler ve önleme yolları.

1. Guideline 5.1.1, Privacy, Data Collection and Storage

Apple’ın en çok uyguladığı kural. Uygulamanız kullanıcı verisi topluyorsa:

  • App Store Connect’te Privacy → App Privacy bölümünü doğru ve eksiksiz doldurun
  • Privacy Manifest dosyası (PrivacyInfo.xcprivacy) ekleyin, iOS 17’den sonra zorunlu
  • Üçüncü parti SDK’ların (Firebase, Facebook, analytics) hepsinin manifest’ini ekleyin
  • Crash reporter kullanıyorsanız “Crash Data” toplamı olarak işaretleyin

En yaygın hata: üçüncü parti bir analytics SDK ekliyorsun ama manifest’inde bu collection’u bildirmiyorsun. Apple review bunu yakalıyor, reddediyor.

Fix: her yeni SDK eklediğinde App Privacy sayfasını güncelle. Xcode 15’te “Privacy Report” feature’ı kullan, build time’da eksik olanı söylüyor.

2. Guideline 4.0, Design, Login gereksinimleri

“Uygulamanın core functionality’si hesap olmadan test edilemiyor” diye reddedilenleri çok gördüm. Apple’ın kuralı net:

Eğer login istiyorsan, ya:
– Sign in with Apple seçeneğini ekle (zorunlu, sosyal login varsa)
– Hesap olmadan da temel feature’ları göster (demo mode, guest mode)
– Test hesabı bilgilerini Review Notes’a yaz

Review Notes’ta test account credentials’ı, login flow’u ve kritik feature’lara nasıl erişileceğini adım adım yazıyorum. Ne kadar spesifik olursan o kadar az risk var.

3. Guideline 2.1, Performance, Crashes

Review sırasında app crash ederse, bırak reject’i, tek bir crash bile “bu app için ek inceleme” tetikliyor.

TestFlight’ta crash-free session oranı %99.5 altındaysa submit etmem. Her submission öncesi:

  • Xcode Instruments → Allocations, Leaks çalıştır
  • TestFlight’a build yükle, en az 2 dış tester 1 hafta kullansın
  • App Store Connect’te “Crashes” tab’ını kontrol et, sıfır crash istiyoruz
  • Bilinen bug’ları TestFlight notes’a yazma, review’er onları arayıp reproduce etmeye çalışabilir

4. Guideline 3.1.1, In-App Purchase

Eğer uygulamanda dijital içerik/özellik satıyorsan mutlaka IAP kullanmak zorundasın. Stripe, PayPal ile ödeme almaya çalışırsan anında reject.

Ama dikkat edilmesi gereken incelikler:

  • “Restore Purchases” butonu her zaman görünür olmalı (Settings ya da Profile sayfasında)
  • Premium içerik loading sırasında “Premium content” deme, onun yerine kullanıcıya ne aldığını açıkla
  • Üyelik terimleri ve gizlilik politikası uygulama içinden erişilebilir olmalı

5. Guideline 2.3.10, Accurate Metadata

App Store metadata’sı (screenshots, description, keywords) yanıltıcı olamaz. Dikkat et:

  • Screenshots app’in gerçek UI’sını göstermeli, mockup veya render’lar kabul edilmez
  • Description’da karşılaştırma yapma (“Yayıncılıkta bir numara”)
  • Diğer app isimlerini mention etme (“Spotify için alternatif”)
  • Keywords listesinde competitor brand’ları kullanma

Bir seferinde “WordPress için” yazmıştım app description’ına, reject yedim çünkü WordPress tescilli marka olduğu için izin gerekiyormuş.

6. Guideline 4.3, Spam / Design Duplication

Apple şuna dikkat ediyor: aynı developer’ın çok sayıda benzer uygulaması varsa “spam” sayabilir.

Ben 12 uygulama yapıyorum ama her biri tamamen farklı: horse racing game, dental tracking, sleep sounds, CV builder. Tema ve target audience’lar ayrı. Eğer 3 tane “meditation app” yapsaydım birinin 4.3 ile reddedilmesi olasıydı.

Fix: eğer benzer app yapıyorsan, her birini farklı developer account’tan yayınla ya da farklı brand altında topla.

7. Review Notes’u ciddiye al

Review Notes alanını çoğu developer atlıyor. Ben her submission’da şunları yazıyorum:

  • Test hesabı credentials (2FA’sız)
  • En önemli 3 feature’ı test etmek için adım adım flow
  • Eğer uygulama backend’e bağlıysa: API’nin hangi sunucuda olduğu, rate limit var mı
  • Eğer location/camera/notification kullanıyorsan: kullanım senaryosu
  • Kullanılan üçüncü parti SDK’ların listesi

Review’er bu notları okuyor ve test sırasında kullanıyor. Ne kadar detay verirsen review o kadar sorunsuz geçiyor.

8. Zamanlama stratejisi

Cuma günü submit etmeyin. Review team hafta sonu çalışıyor ama cumartesi/pazar rejection alırsan pazartesi’ye kadar hiçbir şey yapamazsın.

Benim stratejim: salı-çarşamba submit. Perşembe’ye kadar sonuç geliyor, reject olduysa cuma düzeltip tekrar submit, pazartesi-salı ikinci review.

9. Rejection geldiğinde ne yapmalı

Bir kez reject olursan, panik yapma:

  1. Rejection mesajını dikkatli oku, Apple hangi guideline’a referans veriyor?
  2. Guideline’ı sayfaya gidip oku, genelde örnek veriliyor
  3. Resolution Center’dan cevap yazabilirsin, eğer mesaj yanlış anlaşıldıysa gerekçeni izah et
  4. Düzelt, tekrar submit

Bazen review’er hata yapıyor, yanlış karar versa bile nazikçe “şu kısmı tekrar inceleyebilir misin” yazarsan çoğu zaman cevaplıyor.

Sonuç

App Store review uzay bilimi değil ama disiplin gerektiriyor. Her submission öncesi kendi checklist’ime bakıyorum. Bu birkaç madde submit öncesinde işaretlenmişse, %95 ihtimalle ilk turda geçersin.

Bu konuda bir projeniz mi var?

Kısa bir özet bırakın, 24 saat içinde size dönüş yapayım.

İletişime Geç