Caliency.
Mobil Uygulama

Uygulamalar Mağazalarda Neden Reddediliyor?

Apple'ın en çok andığı kurallar, Apple'ın kendi sözleriyle — ve kimsenin söylemediği kısım: Google Play'de tekrarlanan red, hesabınızı bitirebilen bir sistem.

C

Caliency

11 dk okuma
Pencere kenarındaki masada dizüstü bilgisayarda e-posta okuyan bir adam; yanında standa takılı bir telefon.

Red, yayına çıkmanın normal bir parçası ve kaçınılabilir yarısı iki mağazanın da açıkça belgelediği birkaç yerde toplanıyor. Bu rehber o belgelerden doğrudan alıntı yapıyor, çünkü tam cümleyi gösterebilmek, inceleyiciyle bir tartışmayı bir düzeltmeye çeviren şey.

Bir de neredeyse kimsenin yazmadığı kısmı anlatıyor: iki mağaza tekrarı çok farklı cezalandırıyor ve yalnızca birinin hesabınızı alma yetkisi var.

Önemli Çıkarımlar

  • Apple nihai yapı istiyor: "yer tutucu metin, boş web siteleri ve diğer geçici içerik gönderimden önce temizlenmelidir" (Apple).
  • Uygulamanızda giriş varsa Apple demo bilgisi ve çalışan bir arka uç bekliyor.
  • Yeniden paketlenmiş bir web sitesi genellikle 4.2'den kalıyor.
  • Google Play'de yaptırım tırmanıyor: red → kaldırma → askı → görünürlük kısıtı → hesap kapatma (Google Play).
  • Uygulamanızdaki üçüncü taraf SDK'ların yaptığından siz sorumlusunuz.

Apple'ın gerçekte andığı kurallar

Dört tanesi kaçınılabilir redlerin büyük bölümünü açıklıyor. İfade önemli olduğu için bunlar özetlenmedi, alıntılandı.

2.1 — Uygulama Bütünlüğü

"App Review'a gönderimler, ön siparişe açtığınız uygulamalar dâhil, gerekli tüm meta veriler ve tam çalışan URL'lerle nihai sürümler olmalıdır; yer tutucu metin, boş web siteleri ve diğer geçici içerik gönderimden önce temizlenmelidir."

Ve özellikle:

"Göndermeden önce uygulamanızın cihaz üzerinde hatalar ve kararlılık açısından test edildiğinden emin olun; uygulamanız giriş içeriyorsa demo hesap bilgisini ekleyin (ve arka uç servisinizi açın!)."

Parantezi bir daha okuyun — "ve arka uç servisinizi açın". Ünlem işaretini hak edecek sıklıkta olduğu için kurallarda duruyor. İnceleyici uygulamayı açtığında uykuda olan bir hazırlık sunucusu, uygulamanızla hiç ilgisi olmayan bir red üretiyor.

Bunun diğer sık görülen biçimi: henüz var olmayan bir sayfaya işaret eden destek ya da gizlilik politikası adresi. Meta veri, idari geliyor ve gönderimi düşürüyor.

4.2 — Asgari İşlevsellik

"Uygulamanız, onu yeniden paketlenmiş bir web sitesinin ötesine taşıyan özellikler, içerik ve arayüz içermelidir. Uygulamanız özellikle yararlı, benzersiz ya da 'uygulama gibi' değilse, App Store'a ait değildir."

"Uygulamamız neden reddedildi, gayet çalışıyor" konuşmalarının çoğunun arkasındaki kural bu. Uygulamanın çalışıyor olması test değil. Ürününüz bir web sitesiyse ve uygulama onun kabuğuysa, bu gönderimden sonra itiraz edilecek değil önce çözülecek bir tasarım sorunudur.

Uygulamaya gerçekten ihtiyacınız olup olmadığına hâlâ karar veriyorsanız, önce o soruyu dürüstçe cevaplamak gerekiyor — bir uygulamanın gerçekte ne tuttuğu üstlendiğiniz taahhüdü anlatıyor.

5.1.1 — Veri Toplama ve Saklama

"Tüm uygulamalar, gizlilik politikalarına App Store Connect meta veri alanında ve uygulama içinde kolayca erişilebilir biçimde bir bağlantı içermelidir."

"Ve uygulama içinde" kısmına dikkat. Yalnızca mağaza listelemesinde var olan bir gizlilik politikası bunu karşılamıyor. Ayrıca:

"Kullanıcı veya kullanım verisi toplayan uygulamalar, bu veri toplama anında veya hemen sonrasında anonim sayılsa bile, toplama için kullanıcı onayı almalıdır."

Anonim olması sizi onaydan muaf tutmuyor.

3.1.1 — Uygulama İçi Satın Alma

"Uygulamanız içindeki özellikleri veya işlevleri açmak istiyorsanız … uygulama içi satın alma kullanmalısınız. Uygulamalar içeriği veya işlevi açmak için lisans anahtarları, artırılmış gerçeklik işaretleyicileri, QR kodları, kripto paralar ve kripto cüzdanları gibi kendi mekanizmalarını kullanamaz."

İş modeliniz dijital içerik için ödemeyi mağazanın etrafından dolaştırıyorsa, bu gönderimde keşfedilecek değil bilinçli ve erken alınacak ticari bir karardır.

Ve yumuşak lansman planlayan ekipleri yakalayan bir tane

"Uygulamanızın demo, beta ve deneme sürümleri App Store'a ait değildir – bunun yerine TestFlight kullanın."

Google Play gönderimi değil tekrarı cezalandırıyor

İki mağaza tekrarlayan ihlali farklı ele alıyor ve bu asimetri, bir reddi nasıl karşılamanız gerektiğini değiştiriyor.

App Store reddi bir mesajdır: düzelt, yeniden gönder, devam et. Google Play'in yaptırım dokümantasyonu başka bir şey tarif ediyor — bir merdiven:

  1. Red — uygulama ya da güncelleme yayımlanmaz
  2. Kaldırma — uygulama mağazadan çıkarılır
  3. Askıya alma — uygulama kaldırılır ve hesap durumuna karşı ihlal puanı sayılır
  4. Görünürlük kısıtı — uygulama yayında kalır ama bulunması zorlaşır
  5. Hesap kapatma — tüm uygulamalar kalıcı olarak kaldırılır

Ve birden fazla ürünü olan herkesin dikkat etmesi gereken cümle:

"Tekrarlanan veya ciddi ihlaller (kötü amaçlı yazılım, dolandırıcılık ve kullanıcıya ya da cihaza zarar verebilecek uygulamalar gibi)…bireysel veya ilişkili Google Play Geliştirici hesaplarının kapatılmasıyla sonuçlanacaktır."

İlişkili hesaplar. Bir üründeki sorun diğerlerine uzanabiliyor.

İçselleştirilmeye değer diğer satır:

"uygulamanızda kullanılan herhangi bir üçüncü taraf kodun (örneğin bir SDK) ve o üçüncü tarafın uygulamanıza ilişkin pratiklerinin tüm Google Play Geliştirici Programı politikalarına uygun olmasını sağlamaktan siz sorumlusunuz"

Veri güvenliği beyanınızın söylediğinden fazlasını toplayan bir reklam ya da analitik SDK'sı sizin ihlalinizdir. Siz yazmadınız, davranışını siz seçmediniz ve yine de sizin. Bağımlılık listesini kısa tutmak için gerçek bir gerekçe.

Reddin dışında da mağaza tarafında bekleme var: Google Play'in yeni kişisel hesaplar için istediği 14 günlük kapalı test ve hesap doğrulama süreleri mobil uygulama ne kadar sürede yapılır yazısında.

Bir saatlik gönderim öncesi tarama

Yukarıdaki kurallardan çıkarıldı, rivayetten değil.

Meta verideki her adres yayında mı? Destek, tanıtım, gizlilik. Her birini gizli pencerede açın.

Gizlilik politikası uygulamanın içinden erişilebilir mi, yalnızca mağaza listelemesinde değil? (Politika kolay yarısı — zor olanı her SDK'nın cihazdan ne gönderdiğini beyan etmek.)

Çalışan bir demo hesap var mı ve konuştuğu arka uç gerçekten açık mı? Uyuyan hazırlık ortamı değil. Açık.

Bir yabancı buna "uygulama gibi" der mi? Dürüst cevap "alt barı olan web sitemiz" ise önce onu çözün.

Uygulama içi satın alma dışında açılan bir şey var mı? Lisans anahtarı, kod, dijital içerik için dışarıdan ödeme.

Veri güvenliği beyanınız SDK'ların gerçekte topladığıyla uyuşuyor mu? Bu, beyanı değil SDK'yı kontrol etmeyi gerektiriyor.

Yalnızca simülatörde değil gerçek cihazda test ettiniz mi? Apple bunu açıkça söylüyor.

Lansman tarihinde pay bıraktınız mı? İnceleme süresi sizin kontrolünüzde değil. Mobil uygulama geliştirme rehberi inceleme penceresi dâhil gerçekçi takvimleri anlatıyor.

Kısaca

Kaçınılabilir redlerin çoğu aynı birkaç şey: bitmemiş bir yapı, ölü bir adres, inceleyicinin geçemediği bir giriş, yalnızca listelemede var olan bir gizlilik politikası ya da kabuğa sarılmış bir web sitesi. Hepsi mağazalar tarafından sade bir dille belgelenmiş ve hepsinin gönderimden önce düzeltilmesi sonrasında tartışılmasından ucuz.

Google Play'de ise reddi yeniden deneme değil uyarı sayın. Merdivenin sonu gitmek istemeyeceğiniz bir yer.

Göndermeden önce her iki süreçten de uygulama geçirmiş birinin bakmasını isterseniz, bu kısa bir konuşma.

Bir fikriniz mi var?

Kısa bir görüşmede kapsamlandırıp sabit fiyat verelim.

Proje başlat →