Aktualizace aplikací z Obchodu Play budou o více než 65 % menší

aktualizace-aplikaci-z-obchodu-play_ico

Operační systém Android přinesl něco, o čem se ve své době mohlo uživatelům desktopových Windows jen zdát: automatické aktualizace nainstalovaných aplikací. Tuto schopnost systém se zeleným robotem ve znaku zdědil od Linuxu, ze kterého vychází. Aktualizace aplikací z Obchodu Play je poměrně důležitým prvkem z hlediska bezpečnosti – nové verze totiž kromě nových funkcí a vylepšení také často záplatují nalezené bezpečnostní nedostatky. Mnohdy jsou však poměrně náročné z hlediska objemu dat, proto je vhodné je provádět při připojení přes Wi-Fi.

Až do roku 2012 fungovaly aktualizace aplikací z Obchodu Play jednoduše tak, že si systém stáhl novější verzi programu v podobě kompletního APK balíčku. S tím, jak průběžně roste velikost aplikací, zejména her, až do řádu stovek megabajtů, přestal tento systém vyhovovat. Google proto začal pracovat na snížení objemové náročnosti aktualizací.

Aktualizace aplikací z Obchodu Play pod lupou

Google se tento problém pokoušel vyřešit v tomto roce pomocí algoritmu bsdiff, který pomáhal optimalizovat velikost instalačních balíčků až o 47 %. Nyní pokračuje dalším krokem, který by dle Googlu měl přinést „dramatické snížení velikosti aktualizací aplikací“. Úplný a podrobný popis nového procesu byl publikován na oficiálním blogu pro vývojáře, kde se mimo jiné uvádí, že očekává průměrné snížení velikosti aktualizačního balíčku o 65 až 90 %. Údaj o předpokládané velikosti aktualizace by se také nově měl zobrazovat v klientské aplikaci Obchod Play. Uživatel tedy bude znát informace o stahovaném balíčku ještě předtím, než tlačítkem spustí aktualizaci.

V čem je nový systém aktualizací tak přelomový? APK balíčky jsou v podstatě archivy ve formátu ZIP s řadou speciálních konvencí. Obsah těchto archivů je komprimován pomocí technologie zvané Deflate. Ta sice zmenšuje velikost archivu, ale současně komplikuje případnou identifikaci změn mezi jednotlivými verzemi. I malá změna může způsobit to, že komprimovaný archiv bude vypadat úplně jinak. Nový přístup se nazývá „file-by-file patching“ (zhruba něco jako „záplatování po jednotlivých souborech“), a jeho hlavním přínosem je možnost identifikovat provedené změny a integrovat je do APK souboru v zařízení. Stahovat se tak nebude celý balíček, ale pouze ty části, které se od předchozí verze liší. Efektivitu tohoto přístupu Google ukázal na několika příkladech aktualizací populárních programů. Jak můžete vidět například u aplikace Netflix, místo 7,7MB souboru se bude stahovat jen 1,2 MB.

Aktualizace aplikací z Obchodu Play by měly být o více než 65 % menší Aktualizace aplikací z Obchodu Play by měly být o více než 65 % menší

Klady, ale i zápory

Záplatování po jednotlivých souborech je založeno na porovnání nekomprimované nové a staré verze archivu. Google identifikuje změny, aplikuje je do nekomprimované verze, kterou následně zabalí a rekompiluje do nového balíčku. Nakonec zkontroluje, zda se nová verze APK souboru shoduje s verzí v Obchodě Play. Samozřejmě vše má své klady i zápory. V tomto případě bude patrně možnou komplikací nutnost dekomprimovat APK soubor v zařízení, což samozřejmě vyžaduje výpočetní výkon. To může způsobovat potíže v podobě prodlev na starších a/nebo slabších zařízeních.

Co říkáte na nový způsob aktualizace aplikací z Obchodu Play? Oceníte menší objemy přenášených dat výměnou za to, že celý proces může trvat o něco déle?

Zdroje: androidcentral.com, androidpolice.com, androidauthority.com.

Karel Kilián
O Autorovi - Karel Kilián

Karel Kilián je zkušený technický redaktor a copywriter s bohatou praxí v oblasti informačních a komunikačních technologií. Jeho kariéra začala na pozici prodavače, odkud postupně… více o autorovi

Mohlo by vás zajímat

Komentáře (5)