Android (Operační systém)

Android je mobilní operační systém založený na modifikovaném jádře Linuxu a dalším open-source softwaru. Je vyvíjen konsorciem Open Handset Alliance, které vede společnost Google. Android je navržen primárně pro dotyková mobilní zařízení, jako jsou chytré telefony a tablety, ale jeho modifikace najdeme i v televizích (Android TV), automobilech (Android Auto) či hodinkách (Wear OS).

Architektura systému

Android využívá vrstvenou architekturu, která umožňuje oddělit hardware od aplikací.

1. Jádro Linux (Linux Kernel)

Základní vrstva, která se stará o správu hardwaru (ovladače, paměť, procesy, napájení). Zajišťuje bezpečnostní rozhraní mezi hardwarem a vyššími vrstvami.

2. Hardware Abstraction Layer (HAL)

Vrstva, která poskytuje standardní rozhraní pro výrobce hardwaru. Díky HAL může aplikační framework komunikovat s kamerou nebo Bluetooth bez ohledu na konkrétní model čipu.

3. Android Runtime (ART)

Prostředí, ve kterém běží aplikace. Každá aplikace běží ve vlastním procesu a má vlastní instanci ART. Od verze 5.0 nahradil ART starší virtuální stroj Dalvik. Využívá kompilaci typu AOT (Ahead-of-Time) i JIT (Just-in-Time) pro vyšší výkon.

4. Application Framework

Sada služeb a API, které vývojáři používají k tvorbě aplikací (např. správa oken, notifikace, správa kontaktů).

Vývoj aplikací a jazyky

Aplikace pro Android jsou baleny do souborů s příponou .apk (starší) nebo .aab (Android App Bundle).

Jazyky: Primárními jazyky jsou Java a moderní Kotlin (který je od roku 2019 Googlem preferován). Pro nízkoúrovňový vývoj (např. hry) se používá C++ přes NDK (Native Development Kit).

Google Play Services: Uzavřená sada API od Googlu, která zajišťuje funkce jako Mapy, Push notifikace nebo platební systém Google Pay.

Verze a kódová jména

Google vydává novou hlavní verzi Androidu přibližně jednou ročně. Historicky byly verze pojmenovávány podle sladkostí v abecedním pořadí:

Verze	Název	Hlavní novinky
4.4	KitKat	Optimalizace pro slabší hardware.
5.0	Lollipop	Představení Material Designu a ART.
8.0	Oreo	Funkce Obraz v obraze, Project Treble (rychlejší aktualizace).
10	Android 10	Přechod na číselné označení, tmavý režim, ovládání gesty.
12	Android 12	Material You (dynamické barvy systému).
14/15	Android 14/15	Vylepšení soukromí, podpora satelitní komunikace.

Otevřenost vs. Uzavřenost

V ekosystému Android rozlišujeme dvě hlavní složky:

AOSP (Android Open Source Project): Základní kód systému, který je zdarma a pod open-source licencí. Kdokoli si jej může stáhnout a upravit (např. LineageOS).

GMS (Google Mobile Services): Uzavřená nadstavba od Googlu (Obchod Play, Gmail, YouTube). Výrobci musí splnit určité podmínky, aby mohli GMS do svých zařízení instalovat.

Bezpečnostní mechanismy

Sandboxing: Každá aplikace je izolována od ostatních. Nemůže číst data jiné aplikace bez výslovného povolení.

Oprávnění (Permissions): Od verze 6.0 uživatel schvaluje přístup k citlivým funkcím (mikrofon, poloha) až v momentě, kdy je aplikace vyžaduje.

Google Play Protect: Služba, která skenuje nainstalované aplikace a hledá malware.

Související pojmy: Linux Kernel, Java, Kotlin, Open Source, Google Play, Smartphone.