Özet
assetutil [-ViotshMgpTZ] girdi_dosyası
Açıklama
assetutil, Xcode tarafından derlenen ve iOS/macOS uygulamalarında kullanılan görüntü/varlık kataloğu (.car - Asset Catalog) dosyalarını işlemek ve seyreltmek (thinning) için kullanılan bir komut satırı aracıdır.
Bu araç; talep edilen ölçek faktörlerini (scale factors), cihaz türlerini (device idioms), alt tipleri (subtypes), performans ve bellek sınıflarını .car dosyasından kaldırarak uygulamanın hedef cihazlar için optimize edilmesini sağlar. Seyreltme (thinning) işlemi sırasında; ölçek (scale), cihaz türü (idiom), alt tip (subtype), performans, bellek (memory) ve grafik sınıfı geri dönüşleri (graphics class fallbacks) birden fazla kez belirtilebilir; elde edilen çıktı dosyası, belirtilen tüm parametrelerle eşleşen tüm varlıkları (assets) içerecektir. Eğer ölçek, cihaz türü, alt tip ve grafik sınıfı tek bir küme halinde verilirse, aynı parametrelerin sonraki parametre kümelerinde de mevcut olması gerekir (parametre sayısının eşleşmesi zorunludur).
Seçenekler
-V:assetutiliçin sürüm bilgisini görüntüler.-I: Belirtilen isme sahip varlık kataloğu nesnesinin JSON tanımını, verilmişse-o(--output) ile belirtilen dosyaya, verilmemişse standart çıktıya (stdout) üretir. Herhangi bir isim belirtilmezse, tüm.cardosyasının içeriği hakkında detaylı bir rapor sunar.-i: Komut satırında belirtilen cihaz türü (idiom) değerine sahip tüm varlıkları korur.universal,phoneveyapaddeğerlerinden biri olabilir.-s: Komut satırında belirtilen ölçek faktörüne (scale factor, örn:2veya3) sahip tüm varlıkları korur; kullanılabilir bir geri dönüş (fallback) seçeneği yoksa mevcut ölçek faktörleri kaldırılmaz.-p: Komut satırında belirtilen ekran gamına (display gamut, örn:p3veyasrgb) sahip tüm varlıkları korur; kullanılabilir bir geri dönüş seçeneği yoksa mevcut ekran gamları kaldırılmaz.-M: Komut satırında belirtilen bellek sınıfına (memory class) sahip tüm varlıkları korur; kullanılabilir bir geri dönüş seçeneği yoksa mevcut bellek sınıfı kaldırılmaz.-g: Komut satırında belirtilen grafik sınıfına (graphics class) sahip tüm varlıkları korur. Kullanılabilir bir geri dönüş seçeneği yoksa mevcut grafik sınıfı kaldırılmaz.-h: Barındırılan cihaz türü listesini (hosted idioms list) işler; bu,.cardosyasında her zaman korunması gereken cihaz türlerinin bir listesidir. Bu listeuniversaldeğerini içeremez ve farklı cihaz türleri virgülle ayrılmış bir liste olarak verilmelidir.-t: Korunacak alt tip (subtype) değerini belirtir (tam sayı).-c:-I(--info), döküm seçeneği-d(--dump) ve-D(--dump-stack) seçeneklerine varlık isimlerini sağlamak için kullanılan anaAssets.cardosyası.-o: Çıktı dosyası adı; eğer bir çıktı dosyası belirtilmezse girdi dosyasının üzerine yazılır.-T: Seyreltme (thinning) niteliklerini karşılaştırır.scale=2:idiom=phone:memory=2:graphicsclass=MTL1,2/scale=2:idiom=phone:memory=1:graphicsclass=MTL2,2dosyalar belirtilen seyreltme nitelikleriyle seyreltildiyse ve her iki durumda da aynı Varlık (Asset) dosyası elde edilecekse standart çıktıya yazar.-n: Virgülle ayrılmış bir isim listesi verildiğinde,.cardosyasındaki bu isimlerden biriyle eşleşen tüm varlıklar korunur. İsimler büyük/küçük harf duyarsız olarak karşılaştırılır (İsim == isim). Elde edilen.cardosyasını kaydetmek için-oseçeneğiyle çıktı dosyası belirtilir.-Z: Girdi dosyasının bütünlük kontrolünü (integrity check) gerçekleştirir.
Örnekler
Aşağıdaki örnekler kabukta (shell) çalıştırılabilecek şekilde gösterilmiştir:
Bir
Assets.cardosyasının içeriğini JSON formatında ekrana yazdırma:assetutil -I Assets.carBir
Assets.cardosyasının bütünlük kontrolünü yapma:assetutil -Z Assets.carBir
.cardosyasından yalnızca@2x(Retina) ve@3xçözünürlükteki görselleri ayıklayıp yeni bir dosyaya kaydetme:assetutil -s 2 -s 3 -o CiktiAssets.car Assets.car[!NOTE] Bu araç, iOS/macOS geliştiricilerinin App Thinning (Uygulama Seyreltme) süreçlerini simüle etmeleri ve
.cardosyalarının içeriğini analiz etmeleri için mükemmel bir yardımcıdır.