Aplikace pro iOS jsou až 10x větší, než pro Android! Anebo je to jinak?
- Zprávičky
- Libor Foltýnek
- 12.10.2024
- 0
- Aplikace pro Android jsou až 10x menší než stejné aplikace v AppStore
- Je to způsobeno tím, že každý údaj znamená něco jiného
- Aplikace pro Android se po instalaci výrazně zvětší
Server Emerge Tools upozornil na zajímavou věc: pokud srovnáme stejnou aplikaci pro iOS a pro Android, zjistíme, že ta pro iOS je většinou mnohem větší. Klidně i 10x, a to je už opravdu velký rozdíl. Jenže, jak upozorňuje přímo i Emerge Tools, věc není tak jednoduchá, jak může na první pohled vypadat.
Emerge Tools si ke srovnání vybrali aplikaci Linear. Zatímco verze pro Android ukazuje velikost 8.5 MB, verze pro iPhone 96.3 MB. Kde se vzal tak velký rozdíl? Kouzlo je v detailu, srovnáváme totiž hrušky a jablka.
Zatímco v případě AppStore je uváděná velikost, kterou zabere aplikace v zařízení po instalaci, v Obchodě Play je uváděno, kolik dat budete stahovat. Další osud staženého balíčku ale připomíná pohádku o Otesánkovi. Aplikace se přenáší v komprimovaném stavu, aby se ušetřila stahovaná data. To vidíme i v tabulce níže, že i v případě iPhone jsou stahovaná data menší, než deklarovaná v AppStore. Během instalace se aplikace překládá z úsporného kódu do předkompilovaného.
Teď se dopustím hrubého zjednodušení. Aplikace se programují v nějakém programovacím jazyce. Já vyvíjím v C#, pro Android se dnes používá primárně Kotlin. Kdybychom ale zkusili spustit aplikaci přímo v programovacím jazyce, musela by se neustále za běhu překládat do binárního kódu, a to by bylo velmi pomalé (takto fungovaly interprety jazyka BASIC). Proto se před publikováním musí aplikace přeložit do formy, které už bude rozumět procesor.
Zde je tabulka, která srovnává velikost aplikace v jednotlivých fázích jejích života. Data jsem převzal ze serveru Emerge Tools, sám nemám potřebné nástroje a ani iPhone, abych je mohl sám získat. I po plné kompilaci je aplikace pro iPhone větší, ale už to je „jen“ 1,5x.
iPhone | Android | Rozdíl | |
---|---|---|---|
Obchod | 88,3 | 9,52 | cca 9,5x |
Ke stažení | 33,6 | 9,52 | cca 3,5x |
Normální instalace | 87,6 | 25,81 | cca 3,5x |
Plná instalace | 87,6 | 56,08 | cca 1,5x |
Stále je ale aplikace pro iPhone větší, než pro Android. To je způsobeno mimo jiné tím, že aplikace pro iOS jsou kompilovány přímo do nativního kódu. Dalším faktorem je, že programovací jazyk, který se používá pro iOS je robustnější, což zvětšuje velikost přeloženého kódu. Posledním důvodem, který zmíníme, je, že v aplikacích pro iOS je poměrně dost kódu duplikovaného (až 17 %).
Poznámka: možná jste si všimli, že velikosti aplikací v jednotlivých odstavcích nesouhlasí. Je to proto, že obchod hlásí velikost pro zařízení, ze kterého tam přistupujete a stejně tak velikost instalace se může lišit pro jednotlivá zařízení. Já k testu použil Pixel 8a s Androidem 15 beta, kde byla velikost instalace menší, než u Samsung Galaxy S24 Ultra. Podstatné jsou ale rozdíly po jednotlivých krocích, ne absolutní hodnoty.
Věděli jste, že aplikace po instalaci zvětší svou velikost?
Zdroj: EmergeTools
Libor Foltýnek je redaktor s rozsáhlými zkušenostmi v oblasti technologií a fotografie. Jeho práce je charakterizována důkladným výzkumem, poutavým vyprávěním a praktickými radami, které zpřístupňují… více o autorovi
Komentáře (0)
Přidat komentář