Apple uygulama reddi: neden reddedilir (5 gerçek örnek)
Yazan: Mehdi Azizi
tarihinde güncellendi, 8 dk.
Apple reddi: uygulamalarımda aldığım 2.1, 5.6.3, 5.1.1 ve 2.3.2 retleri, her birinin gerçek nedeni, nasıl yanıt verilir ve gönderim öncesi kontrol listesi.
Apple reddi neredeyse her zaman belirli bir nedenle gelir ve bu neden inceleme mesajında yazılıdır: numaralı bir guideline, çoğu zaman yanında bir ekran görüntüsüyle. İlk uygulamada en sık görülen nedenler şunlar: bitmemiş bir uygulama (2.1), yanlış beyan edilmiş gizlilik (5.1.1), yanıltıcı metadata (2.3.2), uygulama içi satın almayı atlatan bir ödeme (3.1.1) ya da yanlış yere konmuş bir puan isteği (5.6.3). Vakaların büyük çoğunluğunda reviewer uygulamanı gayet iyi anlamıştır: açık veren şey senin gönderindir.
Bunu biliyorum çünkü bu retleri bizzat yedim. Kendi iOS uygulamalarımı yayınlıyorum: Solys (mini oyunlu bir çalar saat) ve TradaZen (bir trading simülatörü) App Store'da. Solys iki ret aldı, biri çıkıştan önce, diğeri bir güncellemede. İki uygulamam daha, Clic ve Nolera, reddedildi, düzeltildi ve Apple'a yeniden gönderildi. İşte bu beş ret, gerçek nedenleri, ardından nasıl yanıt verdiğim ve her gönderimden önce uyguladığım kontrol listesi.
Apple bir uygulamayı neden reddeder: aldığım 5 ret
Solys'te 2.1 reddi: demoyu kazanmak imkânsızdı
Solys'in onboarding'i oynanabilir bir demo sunuyor: tıpkı uyanırken olduğu gibi bir mini oyunu kazanman gerekiyor. Benim telefonlarımda her şey çalışıyordu. Reviewer ise iPad'de test ediyordu. iPad'de bir iPhone uygulaması uyumluluk modunda, daha küçük bir pencerede çalışır. Bu boyutta mini oyundaki kuşa bırakılan geçit kuşun kendisinden daha dar hale geliyordu ve "Devam" butonu yalnızca kazanınca aktif oluyordu. Apple, oyun görevini geçmek için bir yol sunmamı istedi.
Düzeltme: geometrisi ekranın gerçek boyutuna göre hesaplanan bir demo ve başarısız olunca demoyu geçmek için bir bağlantı.
Ders: zorunlu her adımın bir çıkışı olmalı ve zorunlu her ekran, her gönderimden önce mümkün olan en küçük boyutta test edilmeli.
Solys'te 5.6.3 reddi: onboarding sırasında puan isteği
İkinci ret bir sonraki güncellemede geldi. Apple, uygulamanın ilk açılışta ya da onboarding sırasında puan istediğini yazdı. Puan ekranı demonun hemen ardından, kullanıcı uygulamada henüz hiçbir şey yaşamadan çıkıyordu.
Düzeltme: istek akışın sonuna taşındı ve yalnızca kullanıcı demoyu yeni kazandıysa gösteriliyor.
Ders: her hassas istek (puan, bildirim, abonelik, takip) değer kanıtlandıktan sonra gelir, asla önce değil.
Clic'te 5.1.1 reddi: yayındaki gizlilik politikası güncel değildi
Clic yapay zekâyla içerik üretiyor ve uygulamada onay ekranı zaten vardı. Sorun başka yerdeydi: sitede yayınlanan gizlilik politikası eski sürümdü ve uygulamanın topladığı her şeyi anlatmıyordu.
Düzeltme: eksiksiz politika yayınlandı, İngilizce özet eklendi, inceleme notları güncellendi.
Ders: Apple senin yayındaki politikanı okur, repoda bekleyeni değil. Her gönderimden önce beyan ettiğin URL'yi aç ve uygulamanın yaptığını anlattığını kontrol et.
Nolera'da 5.1.1 reddi: sistem isteğinden önce bir "İzin ver" butonu
iOS'un gerçek kamera erişim isteğinden önce Nolera, "İzin ver" butonlu bir açıklama ekranı gösteriyordu. Apple'a göre bu etiket, kullanıcıyı sistemin resmi isteğinden önce kabul etmeye itiyor.
Düzeltme: buton artık uygulamanın 8 dilinde de "Devam" adını taşıyor.
Ders: bir izne hazırlayan ekran açıklar, kullanıcının yerine karar vermez. Apple'ın önerileri gizlilik tasarım kurallarında.
Nolera'da 2.3.2 reddi: tanıtım görseli olarak yeniden kullanılan ikon
Aboneliklerin App Store Connect'te bir tanıtım görseli olabilir. Nolera'nın iki aboneliğinde bu görsel düpedüz uygulama ikonuydu. Apple bunu uygun bulmadı.
Düzeltme: görseller iki abonelikten de kaldırıldı ve gönderim yeniden oluşturuldu.
Ders: sayfandaki her öğe incelenir, yaş sınıflandırması gibi düşünmeden doldurduklarına kadar.
En sık hangi guideline'lar yüzünden ret gelir?
Tüm kurallar App Review Guidelines içinde. İlk uygulamayı en sık tuzağa düşürenler:
2.1: App Completeness. Uygulama çöküyor, bir buton hiçbir yere gitmiyor, zorunlu bir ekran bir boyutta geçilemiyor. Uygulaman giriş gerektiriyorsa inceleme notlarında bir demo hesabı ver, yoksa reviewer giriş ekranında takılır kalır. Bu nedenle ilgili bilmen gereken her şey guideline 2.1 rehberimde.
2.3: Metadata. Gerçek uygulamayı göstermeyen ekran görüntüleri, olmayan bir özelliği vaat eden açıklama, uygun olmayan tanıtım görselleri.
3.1.1: In-App Purchase. Uygulamada dijital içerik ya da özelliklerin kilidini açmak için genel kural Apple'ın uygulama içi satın almasıdır. İstisnalar ülkeye göre değişir ve gelişir: başka bir ödeme yöntemi planlamadan önce guideline'ların güncel sürümünü oku. İşin tamamı iOS uygulama içi abonelikler sayfasında.
3.1.2: Subscriptions. Abonelikli bir uygulama, kullanıcının ne aldığını ve hangi fiyata aldığını açıkça göstermeli. Ödeme ekranındaki klasik hatalar iOS paywall: 7 acemi hatası yazısında.
4.3: Spam. Uygulama binlerce başka uygulamaya benziyor ya da tek başına yeterince şey sunmuyor. Düzeltmesi en zor ret bu: önlemi fikir seçerken alınır. Ayrıntılarıyla guideline 4.3 rehberinde anlatıyorum.
5.1.1: Privacy. Uygulamanın davranışıyla uyuşmayan veri toplama beyanları, eksik gizlilik politikası, net bir açıklama olmadan istenen izin.
Apple reddine gün kaybetmeden nasıl yanıt verilir?
Ret bir hüküm değil, bir gidiş geliştir. İşe yarayan yöntem:
- Nedeni iki kez oku. Mesaj guideline'ı belirtir ve çoğu zaman bir ekran görüntüsü ekler. Pek çok geliştirici fazla hızlı okuduğu için alakasız yanıt verir.
- Gerçek nedeni bul. Clic'te de Nolera'da da gerçek neden, metnin ilk bakışta düşündürdüğü şey değildi. Sorunu reviewer'ın koşullarında yeniden üret: aynı tür cihaz, yeni hesap, ilk açılış.
- Nedeni düzelt, başka bir şeyi değil. Üç yeni özellik eklemenin zamanı değil: her değişiklik inceleme yüzeyini büyütür.
- App Store Connect'te yanıt ver. Neyi düzelttiğini iki somut cümleyle, App Review mesajını yanıtlayarak açıkla.
- Yalnızca eminsen itiraz et. Uygulamanın yanlış anlaşıldığını düşünüyorsan Apple, App Review Board'a başvurmana izin verir, reddedilen gönderim başına tek bir itiraz hakkıyla. Hak edilmiş bir rede itiraz etmek boşuna zaman kaybettirir.
Süre tarafında Apple, gönderimlerin en az %50'sini 24 saatten kısa sürede, %90'ını da 48 saatten kısa sürede incelediğini belirtiyor. Takvimi uzatan bekleme sırası değil, retlerdir: ayrıntısı App Store onay süresi yazısında. Retten sonraki adımların tamamı Apple tarafından reddedilen uygulama sayfasında.
Önlenebilir bir ret, tam bir inceleme döngüsüne mal olur. Apple'a verilecek en iyi yanıt, ona itiraz edecek hiçbir şey bırakmayan gönderimdir.
Her gönderimden önce uyguladığım kontrol listesi
Uygulamalarımda ret üstüne ret alarak oluşturuldu:
- Zorunlu her ekran en küçük iPhone'da, en büyüğünde ve uyumluluk modunda iPad'de, guideline 4.0 tasarım tablosuna göre test edildi
- Onboarding'in her adımında, başarısızlık durumunda bile, bir çıkış yolu var
- Uygulamada giriş varsa inceleme notlarında demo hesabı
- Satın almalar sandbox'ta, geri yükleme dahil test edildi
- Fiyat, süre ve şartlar ile gizlilik bağlantıları, Apple'ın istediği yerlerde ve her dilde mevcut
- Yayındaki gizlilik politikası gönderim günü yeniden okundu
- Gizlilik beyanları, privacy manifest dahil, uygulamanın gerçekten topladıklarıyla uyumlu
- İzin öncesi ekranlarda "İzin ver" butonu yok
- Puan ve bildirim istekleri değer kanıtlandıktan sonra, puan karşılığında hiçbir şeyin kilidini açmadan yerleştirildi (guideline 3.2.2)
- Tanıtım görselleri ve gerçek uygulamayı gösteren ekran görüntüleri, özel ürün sayfaların dahil
İlk yayınınsa, App Store'da uygulama yayınlama sayfası gönderim öncesindeki tüm adımları toplar.
Akışını App Review'a anlatmak için bir şablon
App Review notları şablonunu indir: Fransızca talimatlar, doldurulacak İngilizce notlar ve bir rede yanıt taslağı. Sürümü, ekranlardaki yolu ve beklenen sonucu belirtmeni sağlar. Yalnızca build'inde gerçekten olanı tut.
"Uygulama düzgün kaydediyor" yerine yeniden üretilebilir bir senaryo yaz: başlangıç ekranı, eylem, kapatıp yeniden açma, geri bulunan sonuç. Bir retten sonra düzeltilen davranışı ve onu doğruladığın cihazı belirt. Sorunu yeniden üretemediysen, üretmek için neyin eksik olduğunu açıkla.
Demo hesabının bilgileri App Store Connect'in bunun için ayrılmış alanlarına girilir, asla herkese açık bir dosyaya değil. Kanıtları TestFlight test tablosuyla hazırlayabilir, beş ücretsiz şablonu da bulabilirsin.
Bu retleri gönderimden önce önlemek
Apple Review Kit, gönderim öncesi kontrol listemi, düzeltilmiş Apple retlerimi ve gönderimden önce projeni, paywall'unu ve sayfanı inceleyen Claude Code skill'lerini bir araya getiriyor.
Uygulaman zaten reddedildi mi? Kit, belirtilen kuralı, ne istediğini ve bir düzeltme ile yanıt örneğini bulmana yardım eder. Dosyana hemen birlikte bakmamızı istersen, görüntülü olarak benimle bir saat ayır.
Kimse Apple'ın uygulamanı kabul edeceğini garanti edemez. Daha önce yaşanmış retlerden yola çıkmak, sadece aynı tuzaklara düşme ihtimalini azaltır.
Uygulamanı henüz göndermedin mi? Ücretsiz teşhis sana Apple reddine karşı kontrol listemi gönderir ve geriye ne kaldığını söyler. Hâlâ geliştirme aşamasındaysan, ana sayfa bu retleri akılda tutarak nasıl mobil uygulama oluşturulacağını gösteriyor.
Sık sorulan sorular
Uygulamam Apple tarafından neden reddediliyor?
Neredeyse her zaman inceleme mesajında yazan belirli bir nedenle: numaralı bir guideline, çoğu zaman yanında bir ekran görüntüsüyle. İlk uygulamada en sık nedenler bitmemiş bir uygulama (2.1), yanlış beyan edilmiş gizlilik (5.1.1) ve yanıltıcı metadata (2.3.2). Bir de uygulama içi satın almayı atlatan ödeme (3.1.1) ve yanlış yere konmuş puan isteği (5.6.3) var.
Uygulamam iPhone'umda çalışıyorken neden reddediliyor?
Çünkü reviewer senin koşullarından farklı koşullarda test edebilir. Mini oyunlu çalar saatim Solys'te iPad'de test ediyordu; orada bir iPhone uygulaması uyumluluk modunda, daha küçük bir pencerede çalışır. Demoyu orada kazanmak imkânsızdı. Düzeltme: ekranın gerçek boyutuna göre hesaplanan bir demo ve başarısız olunca geçmek için bir bağlantı.
Apple uygulamamı reddedince ne yapmalıyım?
Nedeni iki kez oku, sonra sorunu reviewer'ın koşullarında yeniden üreterek gerçek nedeni bul: aynı tür cihaz, yeni hesap, ilk açılış. Yalnızca nedeni düzelt, başka hiçbir şeyi değil, çünkü her değişiklik inceleme yüzeyini büyütür. Ardından App Store Connect'te, neyi düzelttiğini iki somut cümleyle anlatarak yanıt ver.
Apple reddine itiraz edilebilir mi?
Evet, ama yalnızca haklı olduğundan eminsen. Uygulamanın yanlış anlaşıldığını düşünüyorsan Apple, App Review Board'a başvurmana izin verir, reddedilen gönderim başına tek bir itiraz hakkıyla. Hak edilmiş bir rede itiraz etmek boşuna zaman kaybettirir. Aksi halde nedeni düzelt ve App Store Connect'te yanıt ver.
Ret yayın süresini uzatır mı?
Evet. Apple, gönderimlerin en az %50'sini 24 saatten, %90'ını da 48 saatten kısa sürede incelediğini belirtiyor: yani takvimi uzatan bekleme sırası değil, retlerdir. Önlenebilir bir ret, tam bir inceleme döngüsüne mal olur. Sürelerin ayrıntısı App Store onay süresi yazısında.
Bir uygulamayı Apple'a göndermeden önce neler kontrol edilmeli?
Zorunlu her ekranı en küçük iPhone'da, en büyüğünde ve uyumluluk modunda bir iPad'de test et, sonra satın almaları sandbox'ta, geri yükleme dahil test et. Yayındaki gizlilik politikanı gönderim günü yeniden oku ve uygulamada giriş varsa inceleme notlarında bir demo hesabı ver. Bu kontrol listesi, uygulamalarımda ret üstüne ret alarak oluştu.