Ana içeriğe geç

Ekran Görüntüleri ve Uygulama Önizlemeleri

İndirme​

ascelerate apps media download <bundle-id>
ascelerate apps media download <bundle-id> --folder my-media/ --version 2.1.0
ascelerate apps media download <bundle-id> --locale en-US,tr

Varsayılan olarak <bundle-id>-media/ dizinine indirir, yükleme tarafından beklenen aynı klasör yapısını kullanır.

--locale, indirmeyi verilen locale'lerle sınırlar (örn. --locale en-US,tr). iPhone Duo ekran görüntüleri ile başlık ve arama sonuçları görselleri de kaydedilir.

Yükleme​

# Bir klasörden yükleyin
ascelerate apps media upload <bundle-id> media/

# Bir arşivden yükleyin (zip, tar, tar.gz desteklenir)
ascelerate apps media upload <bundle-id> screenshots.zip

# Belirli bir sürüme yükleyin (evrensel satın alma kullanan uygulamalar için --platform ekleyin)
ascelerate apps media upload <bundle-id> media/ --version 2.1.0
ascelerate apps media upload <bundle-id> media/ --version 2.1.0 --platform macos

# Yüklemeden önce eşleşen setlerdeki mevcut medyayı değiştirin
ascelerate apps media upload <bundle-id> media/ --replace

# İnteraktif mod: geçerli dizinden bir klasör veya arşiv seçin
ascelerate apps media upload <bundle-id>

Klasör argümanı belirtilmediğinde, komut geçerli dizindeki tüm alt dizinleri ve arşiv dosyalarını numaralı seçici olarak listeler. Arşivler (zip, tar, tar.gz) yüklemeden önce otomatik olarak açılır.

Her dosyanın satırı, çalıştırmadaki sırasıyla başlar ([57/203]). Terminalde satır, dosya gönderilirken ne kadarının yüklendiğini de gösterir.

Klasör yapısı​

Medya klasörünü locale ve display type alt klasörleriyle düzenleyin:

media/
├── en-US/
│ ├── APP_IPHONE_67/
│ │ ├── 01_home.png
│ │ ├── 02_settings.png
│ │ └── preview.mp4
│ └── APP_IPAD_PRO_3GEN_129/
│ └── 01_home.png
└── de-DE/
└── APP_IPHONE_67/
├── 01_home.png
└── 02_settings.png
  • 1. seviye: Locale (ör. en-US, de-DE, ja)
  • 2. seviye: Display type klasör adı (aşağıdaki tabloya bak)
  • 3. seviye: Medya dosyaları -- görseller (.png, .jpg, .jpeg) ekran görüntüsü olur, videolar (.mp4, .mov) uygulama önizlemesi olur
  • Dosyalar dosya adına göre alfabetik sırada yüklenir
  • Desteklenmeyen dosyalar uyarıyla atlanır

Display type'ları​

App Store Connect, iPhone uygulamaları için APP_IPHONE_67 ve iPad uygulamaları için APP_IPAD_PRO_3GEN_129 ekran görüntülerini zorunlu tutar. Diğer tüm display type'lar isteğe bağlıdır.

Klasör adıCihazEkran görüntüleriÖnizlemeler
APP_IPHONE_67iPhone 6.7" (iPhone 17 Pro Max, 16 Pro Max, 15 Pro Max)ZorunluEvet
APP_IPAD_PRO_3GEN_129iPad Pro 12.9" (3. nesil+)ZorunluEvet
Tüm isteğe bağlı display type'lar
Klasör adıCihazEkran görüntüleriÖnizlemeler
APP_IPHONE_61iPhone 6.1" (iPhone 17 Pro, 16 Pro, 15 Pro)EvetEvet
APP_IPHONE_65iPhone 6.5" (iPhone 11 Pro Max, XS Max)EvetEvet
APP_IPHONE_58iPhone 5.8" (iPhone 11 Pro, X, XS)EvetEvet
APP_IPHONE_55iPhone 5.5" (iPhone 8 Plus, 7 Plus, 6s Plus)EvetEvet
APP_IPHONE_47iPhone 4.7" (iPhone SE 3. nesil, 8, 7, 6s)EvetEvet
APP_IPHONE_40iPhone 4" (iPhone SE 1. nesil, 5s, 5c)EvetEvet
APP_IPHONE_35iPhone 3.5" (iPhone 4s ve öncesi)EvetEvet
APP_IPHONE_DUOiPhone Duo (aşağıya bakın)EvetHayır
PRODUCT_PAGE_HEADERÜrün sayfası başlığı (aşağıya bakın)EvetHayır
APP_STORE_SEARCH_RESULTSApp Store arama sonuçları (aşağıya bakın)EvetHayır
APP_IPAD_PRO_3GEN_11iPad Pro 11"EvetEvet
APP_IPAD_PRO_129iPad Pro 12.9" (1./2. nesil)EvetEvet
APP_IPAD_105iPad 10.5" (iPad Air 3. nesil, iPad Pro 10.5")EvetEvet
APP_IPAD_97iPad 9.7" (iPad 6. nesil ve öncesi)EvetEvet
APP_DESKTOPMacEvetEvet
APP_APPLE_TVApple TVEvetEvet
APP_APPLE_VISION_PROApple Vision ProEvetEvet
APP_WATCH_ULTRAApple Watch UltraEvetHayır
APP_WATCH_SERIES_10Apple Watch Series 10EvetHayır
APP_WATCH_SERIES_7Apple Watch Series 7EvetHayır
APP_WATCH_SERIES_4Apple Watch Series 4EvetHayır
APP_WATCH_SERIES_3Apple Watch Series 3EvetHayır
IMESSAGE_APP_IPHONE_67iMessage iPhone 6.7"EvetHayır
IMESSAGE_APP_IPHONE_61iMessage iPhone 6.1"EvetHayır
IMESSAGE_APP_IPHONE_65iMessage iPhone 6.5"EvetHayır
IMESSAGE_APP_IPHONE_58iMessage iPhone 5.8"EvetHayır
IMESSAGE_APP_IPHONE_55iMessage iPhone 5.5"EvetHayır
IMESSAGE_APP_IPHONE_47iMessage iPhone 4.7"EvetHayır
IMESSAGE_APP_IPHONE_40iMessage iPhone 4"EvetHayır
IMESSAGE_APP_IPAD_PRO_3GEN_129iMessage iPad Pro 12.9" (3. nesil+)EvetHayır
IMESSAGE_APP_IPAD_PRO_3GEN_11iMessage iPad Pro 11"EvetHayır
IMESSAGE_APP_IPAD_PRO_129iMessage iPad Pro 12.9" (1./2. nesil)EvetHayır
IMESSAGE_APP_IPAD_105iMessage iPad 10.5"EvetHayır
IMESSAGE_APP_IPAD_97iMessage iPad 9.7"EvetHayır
not

Watch ve iMessage display type'lar yalnızca ekran görüntülerini destekler -- bu klasörlerdeki video dosyaları uyarıyla atlanır. --replace ile eşleşen her set, klasördeki dosyaların tam olarak aynısını içerir hâle gelir: Yüklenmiş ekran görüntüleri ve önizlemeler olduğu gibi kalır (dosya adları ne olursa olsun sağlama toplamlarından tanınır), setteki diğer öğeler silinir, yalnızca yeni veya değişmiş dosyalar yüklenir ve set klasördeki sıraya konur. Hiçbir şey değişmediyse yeniden çalıştırmak hiçbir şey yüklemez; dosyaları yeniden adlandırıp yerlerini değiştirmek yalnızca seti yeniden sıralar. iPhone Duo, başlık ve arama sonuçları görselleri varlık kitaplığından geçer ve bütünüyle değiştirilir.

iPhone Duo​

App Store Connect'te iPhone Duo için bir ekran görüntüsü seti yoktur. ascelerate, APP_IPHONE_DUO klasöründeki dosyaları uygulamanın varlık kitaplığına yükler ve dosya sırasıyla sürüm yerelleştirmesine yerleştirir. Kabul edilen boyutlar şunlardır: 2853×2007 veya 2007×2853 (iç ekran, açık konumda), 2034×1398 veya 1398×2034 (dış ekran). Diğer boyutlar, herhangi bir şey yüklenmeden önce reddedilir. --replace ile her locale'deki mevcut iPhone Duo ekran görüntüleri önce kaldırılır.

Klasör, iPhone Duo uygulama önizlemelerini de (.mp4, .m4v veya .mov) içerebilir: 1920×886 veya 886×1920, 23–30 fps'de 15–30 saniye, ses kanalıyla. Önizlemeler locale'in mevcut önizlemelerinin ardına eklenir; --replace ile mevcut olanlar önce kaldırılır. Ekran görüntüleri ve önizlemeler ayrı ayrı ve yalnızca klasörde o türden dosya olduğunda değiştirilir.

Yeniden denemelere rağmen yüklenemeyen bir dosya olursa media upload, o locale'in iPhone Duo ekran görüntülerini veya önizlemelerini çalışmanın sonunda yeniden yerleştirir; böylece dosya sırası korunur. media verify bunları dosya adları ve işlenme durumlarıyla listeler. Medya klasörü verildiğinde, dosyaları ya da sırası klasörden farklı olan locale'leri de bildirir. Klasördeki dosyaları başka bir sırayla içeren bir seti, onayınızdan sonra hiçbir şeyi yeniden yüklemeden dosya sırasına koyar; dosyalar farklıysa media upload komutunu --replace ile çalıştırın. media download ekran görüntülerini kendi dosya adlarıyla kaydeder; media prune ise bunları hiçbir zaman silmez.

Ürün sayfası başlığı ve arama sonuçları​

İki klasör daha varlık kitaplığı üzerinden yüklenir. Her biri locale başına, bir cihaz sınıfına bağlı olmayan tek bir görsel veya video tutar: Sürüm bunu her cihazda (iPhone, iPad, iPhone Duo) gösterir ve klasörler tüm platformların sürümlerinde kullanılabilir.

  • PRODUCT_PAGE_HEADER: ürün sayfasının üst kısmındaki görsel veya video. 3840×1646 veya 5244×2950 PNG ya da 30 veya 60 fps'de 5–30 saniyelik 3840×1646 video.
  • APP_STORE_SEARCH_RESULTS: App Store arama sonuçlarında uygulamayla birlikte gösterilir. 1920×1280 ile 3840×2560 arasında 3:2 oranlı JPG veya PNG ya da 5244×2950 PNG; veya aynı boyut aralığında, 30 veya 60 fps'de 5–30 saniyelik 3:2 oranlı video.

Yükleme, --replace kullanılsın ya da kullanılmasın, locale'in mevcut görselini veya videosunu değiştirir; eskisi ancak yenisi yüklendikten sonra kaldırılır. Yeni bir video birkaç dakika işlenir; media verify bunu gösterir. media download görselleri kaydeder; App Store Connect bu videolar için indirme bağlantısı vermez.

Özel ürün sayfaları aynı dosyaları product-pages media upload ile --display-type PRODUCT_PAGE_HEADER, APP_STORE_SEARCH_RESULTS veya APP_IPHONE_DUO vererek kabul eder.

App Store görsellerini tasarlama​

ascelerate screenshot setup-prompt --design, bir yapay zeka kodlama ajanının tasarım oluşturucu kurması için talimatlar yazdırır: projenin app-store-screenshots/ klasöründe, çerçevelenmiş ekran görüntülerini (ascelerate screenshot frame) her dilde başlıklı, reklam tarzı App Store görsellerine dönüştüren ve media upload komutunun beklediği düzende dışa aktaran küçük bir web uygulaması:

export/en-US/APP_IPHONE_67/01_hero.png
export/en-US/APP_IPAD_PRO_3GEN_129/01_hero.png
export/de-DE/APP_IPHONE_67/01_hero.png
ascelerate apps media upload <bundle-id> export --platform ios --replace

app-store-screenshots skill'i (npx skills add keremerkan/ascelerate) ajanları aynı talimatlara yönlendirir.

Takılmış medyayı doğrulama ve yeniden deneme​

Bazen ekran görüntüleri veya önizlemeler yüklemeden sonra "işleniyor" durumunda takılabilir. Durumu kontrol etmek ve isteğe bağlı olarak takılmış öğeleri yeniden denemek için media verify kullanın:

# Tüm ekran görüntüleri ve önizlemelerin durumunu kontrol edin
ascelerate apps media verify <bundle-id>

# Belirli bir sürümü kontrol edin
ascelerate apps media verify <bundle-id> --version 2.1.0

# Medya klasöründeki yerel dosyaları kullanarak takılmış öğeleri yeniden deneyin
ascelerate apps media verify <bundle-id> media/

Klasör argümanı olmadan komut salt okunur bir durum raporu gösterir. Tüm öğeleri tamamlanmış olan setler tek satırlık özet gösterir; takılmış öğeleri olan setler her dosyayı ve durumunu genişleterek gösterir. Klasör argümanı ile takılmış öğeleri silip eşleşen yerel dosyalardan tekrar yüklemeyi teklif eder ve orijinal sıra düzenini korur.

Bir ekran görüntüsü tamamlanmış görünse de varlık kitaplığındaki yerleşimi hâlâ işleniyorsa takılmış sayılır. App Review bu durumdaki bir sürümü kabul etmez ("Asset is being processed"); klasörle yeniden denemek o ekran görüntüsünü yeniden yükler.

Eski Setleri Temizleme​

Yükleme sırasındaki --replace yalnızca yerel bir klasörle eşleşen setleri değiştirir; artık sunmadığınız ekran boyutlarına ait sunucu setleri eski ekran görüntülerini korur. media prune, eşleşen yerel locale/display-type klasörü olmayan setleri, öğe sayılarıyla birlikte listeleyip onay aldıktan sonra siler:

ascelerate apps media prune <bundle-id> media/
ascelerate apps media prune <bundle-id> media/ --version 2.1.0 --platform ios

Yerel klasörü olmayan locale'ler tamamen atlanır; komut yalnızca klasörün gerçekten yönettiği locale'ler içinde temizlik yapar.

Varlık kitaplığı görsellerini kaldırma​

media remove, varlık kitaplığı öğelerinden bir türü sürümden kaldırır: PRODUCT_PAGE_HEADER veya APP_STORE_SEARCH_RESULTS görseli ya da videosu veya APP_IPHONE_DUO ekran görüntüleri (uygulama önizlemeleri için --previews). Komut, --locale ile verilen locale'lerde ya da hepsinde çalışır ve onay istemeden önce bulduklarını listeler:

ascelerate apps media remove <bundle-id> PRODUCT_PAGE_HEADER --locale en-US
ascelerate apps media remove <bundle-id> APP_STORE_SEARCH_RESULTS
ascelerate apps media remove <bundle-id> APP_IPHONE_DUO --locale en-US,tr --version 2.1.0
ascelerate apps media remove <bundle-id> APP_IPHONE_DUO --previews --locale en-US

Varlık kitaplığını temizleme​

Her uygulamanın yüklenen görselleri ve videoları tutan bir varlık kitaplığı vardır ve sürümler bu görselleri paylaşır: Yeni bir sürümün ekran görüntüleri önceki sürümün görselleridir ve eski sürümler kendi görsellerini korur. Bu nedenle bir görsel, herhangi bir sürüm (eskiler dahil), özel ürün sayfası veya etkinlik onu kullandığı sürece kullanımda kalır. ascelerate bir yerleşimi kaldırdığında (media remove, media upload --replace ya da bir başlık veya arama sonuçları görselinin değiştirilmesi), görseli artık hiçbir şey kullanmıyorsa ve görsel hiç App Review'dan geçmemişse görseli veya videoyu da siler.

Önceki yüklemeler kitaplıkta yine de kullanılmayan görseller ve videolar bırakmış olabilir. media library görselleri ve videoları sayar ve kullanılmayanları listeler; --delete-unused ile bunları onay aldıktan sonra siler:

ascelerate apps media library <bundle-id>
ascelerate apps media library <bundle-id> --delete-unused
ascelerate apps media library <bundle-id> --only APP_IPHONE_DUO --delete-unused

--only, listeyi varlık kategorisine ve piksel boyutuna bakarak verilen türlere uyan görsellerle sınırlar: PRODUCT_PAGE_HEADER, APP_STORE_SEARCH_RESULTS, APP_IPHONE_DUO, APP_IPHONE_67 gibi bir ekran görüntüsü görüntüleme türü (boyutlar App Store Connect'ten alınır) ya da dosyası hiç gelmemiş yüklemeler için UNFINISHED_UPLOADS. Böylece kitaplık cihaz türü cihaz türü temizlenebilir. Bir saatten yeni görseller her zaman korunur, çünkü aynı anda çalışan bir yükleme onları yerleştirmek üzere olabilir; App Store Connect'in saatlik API sınırına ulaşan bir çalıştırma durur ve daha sonra yeniden çalıştırmanızı ister.

App Review'dan geçmiş görseller, yerleştirilmiş olsun ya da olmasın hiçbir zaman silinmez ve her görsel silinmeden hemen önce yeniden denetlenir.