Oral-B iOS uygulaması neden neredeyse 300MB? Colgate uygulaması neden daha da büyük?
(twitter.com/emergetools)- 290MB’lık Oral-B iOS uygulamasında 233MB asset catalog kaynaklı; uygulama boyutunun büyük kısmını farklı diş fırçası modelleri için kullanılan PDF varlıkları oluşturuyor
- Oral-B’deki en büyük varlık
Sonos_M9_roseve 7.8MB boyutunda; birçok PDF, diş fırçasının tamamını değil yalnızca sap ve düğmeleri içeriyor Comino.bundleiçinde20class_seqlen26_6p5h_20200302-095627_comino_android_productiongibi dosyalar bulunuyor; bunlar model ağırlıkları gibi görünüyor- Colgate Smile uygulaması 378MB ile daha da büyük; bunun başlıca şişme nedenleri 125MB’lık Unity framework’ü ve kaldırılmamış ikili semboller
- Colgate, ana bundle ile widget eklentisinde 60MB’lık varlık ve yerelleştirme dosyalarını tekrar ediyor; bu da işlevsel bir değer katmadan uygulama boyutunu en az 120MB büyütüyor
Oral-B uygulama boyutunun büyük kısmı PDF varlıklarından oluşuyor
- Oral-B uygulamasında toplam 290MB’ın 233MB’ı asset catalog kaynaklı
- Bu, toplam boyutun %80’ine karşılık geliyor
- Bunun büyük kısmını farklı diş fırçası modellerini gösteren PDF varlıkları oluşturuyor
- En büyük PDF varlığı
Sonos_M9_roseve 7.8MB boyutunda - Birçok PDF, diş fırçasının tam görselini değil yalnızca sap ve düğmeleri içeriyor
- Dikkat çeken bir diğer öğe ise 15MB’lık
Comino.bundle- İçinde
20class_seqlen26_6p5h_20200302-095627_comino_android_productiongibi dosyalar bulunuyor - Bu dosyalar bir tür model ağırlığı gibi görünüyor
- İçinde
Colgate Smile’daki daha büyük sorun, azaltılabilir şişkinlik
- Colgate Smile uygulamasının boyutu 378MB
- Uygulama, “guided brushing” özelliği nedeniyle Unity kullanıyor gibi görünüyor
- Unity framework’ü 125MB boyutunda
- Bu özellik gerçekten değer sağlıyorsa, Unity kullanımı başlı başına makul bir tercih sayılabilir
- Daha büyük israf ise üretim uygulamasında ikili sembollerin kaldırılmamış olması
- İkili semboller symbolication için kullanılır
- DSYM dosyalarını crash reporter’a yüklüyorsanız, bunların üretim uygulamasının içinde yer almasına gerek yoktur
- Yalnızca ikili sembolleri kaldırmak bile toplamda yaklaşık 60MB, yani %15 tasarruf sağlayabilir
- Bir diğer şişkinlik nedeni ise tekrarlı dahil etme
- Colgate, ana bundle ile widget eklentisinde varlıkları ve yerelleştirme dosyalarını 60MB olacak şekilde tekrar ediyor
- Kırmızı düğümler tekrar eden öğeleri gösteriyor
- Colgate uygulamasında en az 120MB, kullanıcıya işlevsel hiçbir değer sağlamayan boyut olarak hesaplanıyor
- İlgili yazılar:
1 yorum
Hacker News yorumları
Oral-B uygulamasıyla Colgate uygulamasının en başta neden var olduğunu anlamıyorum
Kişisel olarak bir kez deneyip sildim, ama fırçalamanın verimli olup olmadığını kontrol etmek isteyenler için faydalı olabilir. Sonuçta tamamen isteğe bağlı; uygulamanın varlığını yok sayıp sadece fırçayı kullanabilirsiniz
Böylece başka “bilinmeyen” markalara göre daha tanıdık geliyor ve o markayı satın alma olasılığı artıyor. Uygulama da aynı şekilde, her kullandığınızda logoyu ve markayı gözünüzün önüne sokuyor. Sonuç olarak veri satmalarına bile gerek yok
Üzücü gerçek şu ki App Store > Your Account’ta yenileme yaptığınızda 100 MB altı uygulama sayısı bir elin parmaklarını geçmiyor. Benim durumda uygulamaların çoğu 300 MB ve burada sadece güncellemelerden bahsediyorum.
Android ile karşılaştırınca orada uygulamalar çok daha hafif. Eski Objective-C uygulamaları çok daha inceydi; Swift uygulamaları ise ABI geldikten sonra bile büyük ve hantal kalıyor. Bunda geliştirici tembelliğinin de payı var, Apple araçlarının pek iyi olmamasının da. Derlenmiş CocoaPods ya da Swift paketlerinde tree shaking veya ölü kod temizleme yok. Apple pek umursamıyor; hatta daha büyük depolamalı yeni cihazlar ya da iCloud abonelikleri satmayı memnuniyetle karşılıyor gibiler
Kaynaklar, mimariler ve diller yalnızca gerektiğinde indiriliyor; oyun asset’lerindeki doku sıkıştırma formatları gibi alana özgü öğeler de buna dahil. Böylece cihaz yalnızca ihtiyaç duyduğu dokuları alıyor, geliştirici de birden fazla formatta dağıtım yaparak kullanıcının kendi cihazının desteklediği en iyi seçeneği almasını sağlayabiliyor. İsteğe bağlı kod modüllerinin indirilip kurulması da mümkün. Örneğin kayıt sürecini ayrı bir modüle ayırıp başta kurabilir, kullanıcı kaydolduktan sonra da kurulum boyutunu azaltmak için kaldırabilirsiniz. Bazı geliştiriciler müşteri desteği için birkaç MB’lık VOIP modülünü kullanıcı destek ekranını açana kadar gerçekten indirip kurmuyor; bu yüzden çoğu kullanıcıda hiç kurulmamış oluyor.
[0]: https://developer.android.com/guide/playcore/asset-delivery/...
https://xcancel.com/emergetools/status/1828490449881047401
Korsan yayın izlemeye çalışırken çıkan spam ara sayfalara benziyor. Orayla ilgisi olmayan birinin bunu paylaşmış olmasına inanmak zor; berbat bir araç
Veri broker’ları için kullanıcı verisi toplamanın bu kadar değerli bir işe dönüşmesi sinir bozucu. Büyük şirketlerin iyi ürünler yerine veri sömüren uygulamalar yapmayı sürdürüp rakamların yükselmesine sevinmelerine katlanamıyorum.
“Eskiden her şey daha iyiydi” diye homurdanmaya başladığıma göre resmen orta yaşı geçmiş olmalıyım; ama buzdolabı, bulaşık makinesi, diş fırçası için uygulama nedir? Bulaşık makinesi bulaşıkları kendi kendine yerleştirdiği gün gelirse, işte o zaman hedonik fiyat düzeltmesini kabul ederim
Sonuçta farklı model görsellerini aptalca şişirilmiş şekilde PDF olarak koymalarından mı ibaret? Beklediğim bu değildi. Daha sonra bahsi geçen Colgate uygulaması gibi bir şey sanmıştım
Oral-B uygulaması birkaç yıl önce oldukça hafifti; güncel dünya haberleri akışı gösteriyor, Apple Health’e veri kaydediyor ve kesintisiz diş fırçalamayı teşvik ettiği için eğlenceliydi.
Ama tüm uygulamayı yeniden yazınca neredeyse bütün özellikleri kaybetti ve yükseltmeden sonraki ilk çalıştırmadan beri bir daha hiç açmadım. iOS App Store’da TestFlight gibi eski sürümleri kurmaya izin veren bir şey olsa keşke. Ne yazık ki TestFlight da en fazla 90 gün. Artık BLE sniffer’ı çıkarma zamanı gelmiş olabilir, ama tek seferlik izinsiz geçici bir uygulamaya HealthKit izni almak imkânsız gibi
Boyutunun kendisinden daha utanç verici olan şey, diş fırçasının modunu değiştirmek için bir uygulamaya ihtiyaç duyulması. Buna gerçekten izin verilmemesi gerektiğini düşünüyorum ama bunun nasıl zorlanacağı konusunda pek emin değilim
Ekran diş fırçalama süresi zamanlayıcısını gösteriyor; diş fırçasında gereken takip için bu kadarı yeterli. Düğmeyle erişilemeyen başka modlar olabilir ama benim bildiğim yok
İkinci görev ise neye izin verilip neyin yasaklanacağını tam olarak tanımlamak; şirketlerin müşterileri uğraştırmak için hayal edebileceği aptalca şeylerin sayısı o kadar fazla ki, iyi temel ilkelere dayanarak değerlendirip karar verdikleri sürece böyle bir kuruma oldukça geniş bir takdir yetkisi verilebileceğini düşünüyorum. Örneğin “eşlik eden bir uygulama olmadan uygulanabilecek özellikler, eşlik eden bir uygulamayı zorunlu kılmamalıdır” gibi bir ilke
Asıl soru, en başta neden diş fırçası için bir uygulamaya ihtiyaç olduğu
Bunların hepsi “rıza” kapsamında yapılıyor. Çünkü uygulamayı yüklemiş ve büyük olasılıkla hizmet şartlarını ya da gizlilik politikasını kabul etmiş oluyorsunuz. Ürünle ne zaman veya ne sıklıkta etkileşime geçtiğinizi sayan ya da ürünü kullanmanızı hatırlatan bir hizmet bahanesi de var. Normal yaşayan bir yetişkin olarak zaten yaptığınız bir şey; sadece daha az doğruydu, o kadar
Belirli bir şehirde veya ilçede insanların genel nüfusa göre dişlerini %25-50 daha az fırçaladığını gösteren veri varsa, o bölgede reklam harcamasını artırmak oldukça makul olur. Çünkü dişlerini iyi fırçalamayan kişilerin hasarı telafi etmek için diş sağlığına yönelik sakız satın alma olasılığının daha yüksek olduğu düşünülebilir
Açılmış sürüm: https://unrollnow.com/status/1828490449881047401
Aklı başında biri hangi nedenle diş fırçası uygulaması indirir ki?