Systém Android má největší zastoupení na světě mezi všemi operačními systémy.[pozn. 1] Na smartphonech je nejrozšířenější od roku 2011, na tabletech od roku 2013.[4][5] V květnu 2021 měl Android celosvětově přes 3 miliardy aktivních uživatelů měsíčně.[6]
Systém Android poskytuje pro aplikace mezi svými verzemi víceméně spolehlivou kompatibilitu, od verze 5.0 již však nejstarší aplikace fungovat nemusí, od verze 14.0 také nelze instalovat aplikace vyvinuté pro starší systém než 6.0.[7]
Charakteristika
Vývoj Androidu vede firma Google pod hlavičkou Open Handset Alliance (sdružení 84 výrobců mobilních zařízení) v rámci projektu Android Open Source Project (AOSP).[8] Cílem je rozvoj mobilních technologií, které budou mít výrazně nižší náklady na vývoj a distribuci, a zároveň spotřebitelům přinese inovativní uživatelsky přívětivé prostředí. Při vývoji systému je brána v úvahu omezení, kterými disponují klasická mobilní zařízení, jako výdrž baterie, menší výkonnost a málo dostupné paměti. Zároveň je systém navržen pro běh na různých hardwarových platformách, čipových sadách, velikosti i rozlišenídispleje.[9] Pro vývojáře aplikací poskytuje nástroje pro jejich vývoj – Android SDK.
AOSP zveřejňuje zdrojové kódy Androidu aby je mohl kdokoliv použít. Název Android je ochrannou známkou, a proto je toto označení možné používat jen při dodržení určitých podmínek (získání licence). Výrobce mobilního zařízení, který má od Google licenci, může vyměnit standardní uživatelské prostředí (tzv. launcher) za vlastní (například MIUI od Xiaomi, One UI od Samsungu). Pokud je systém upraven více nebo tvůrce nemá licenci od Google, musí být systém založený na AOSP prezentován pod jiným jménem (například HarmonyOS od Huawei, YunOS, Fire OS, OxygenOS od OnePlus, LineageOS atd.).
Samotný Android (tak jak je vyvíjen v AOSP) zajišťuje jen základní běh systému. Pro další síťové služby, hry atd. je do AOSP potřeba dodat podpůrné programové vybavení, což je obvykle proprietární software, například:
Android se skládá z operačního systému (jádro a systémové nástroje), podpůrných knihoven (framework, resp. Služby Google Play), uživatelského prostředí (grafická nadstavba, v Androidu tzv. launcher) a dalších aplikací. Aplikace jsou přednostně distribuovány přes obchod Google Play a jsou přes něj i aktualizovány.
Služby Google Play (knihovny a API pro běžné aplikace) jsou od Androidu 4.4 aktualizovány společně s ostatními aplikacemi prostřednictvím obchodu s aplikacemi Google Play. To znamená, že i mobilní zařízení bez aktualizací samotného systému Android má k dispozici nejnovější verze podpůrných knihoven a mohou tak i na starším Androidu běžet nejnovější verze uživatelských aplikací (což je velký rozdíl proti iOS od Apple, který je nutné aktualizovat vcelku). Aktualizace systémových knihoven jsou poskytovány firmou Google přes obchod Google Play zhruba 10 let (v roce 2024 ukončil Google podporu pro systémy Android 5.0 a 5.1 vydané v roce 2014, které měly v té době celosvětový podíl aktivních zařízení pod 1 %).[10]
Například v roce 2022 vydal Google nový Android 13 s aktualizovanými službami Google Play, které pomocí nového nástroje pro výběr fotografií (Photo Picker z Androidu 13) umožňují nedávat aplikacím kvůli sdílení fotek oprávnění na celý úložný prostor. Photo Picker následně Google backportoval i do starších verzí Androidu (až do verze Android 4.4 KitKat z roku 2013),[11] kde ho může využít jakákoliv aplikace.[12] Bezpečnostní aktualizace vydává Google každý měsíc,[13] od kterého jej přebírají výrobci zařízení a mohou je začlenit do do svých OTA aktualizací.
Samotný systém Android je v mobilním zařízení možné aktualizovat buď přes USB konektor z počítače nebo metodou OTA (Over-The-Air).[14] Při metodě OTA poskytne výrobce telefonu ke stažení nový obraz systému, který je bezdrátově přenesen do mobilního zařízení a odtamtud je aktualizace do systému aplikována při restartu zařízení. Vydávání aktualizací zejména u levnějších zařízení vázne nebo není k dispozici vůbec. V roce 2024 poskytuje Google i Samsung (ten jen na některé své telefony) až 7 let aktualizací.[15]
Projekt Treble
Google pro zjednodušení aktualizací systému (a tím i zkrácení čekání na nové aktualizace) spustil Project Treble, který implementoval do Androidu 8.0 Oreo vydaném v roce 2017.[16] Project Treble odděluje systém Android od implementace výrobců zařízení. Díky tomu mohou výrobci přebírat přímo od Google aktualizace systému Android, aniž by museli upravovat vlastní software (ovladače, systémové nadstavby, aplikace pro fotoaparát a podobně),[17] což celý systém aktualizací zjednodušuje a zrychluje.[18]
Licence
Android je celosvětová ochranná známka, takže nikdo na světě nemůže jiný systém pojmenovat stejně. Jakákoliv změna v systému Android proto podléhá schválení firmy Google, která tak zajišťuje, že cokoliv je označeno jako Android, dosahuje jím stanovené kvality. Stejné opatření se týká držitelů jiných ochranných známek (např. Firefox, Windows apod.), protože pokud by firmy ochrannou známku takto nechránily, bylo by vlastnictví ochranné známky zrušeno. Základní podmínkou pro Android je zákaz forků, tedy vlastních systémů založených na AOSP (Android Open Source Project). Proto musí mít pozměněné systémy vycházející z AOSP odlišná jména (např. Fire OS od Amazonu nebo HarmonyOS od Huawei). Google dává podmínku „no forks“ i do smluv s OEM partnery (firmy vyrábějící Android zařízení), na což si výrobci alternativních systémů stěžují. V EU je tato podmínka neplatná, celosvětově dosáhla v roce 2022 jistého průlomu firma Amazon, když uzavřela s firmou Google dohodu o umožnění výroby televizí se systémem Fire TV OS, podle které firmy TCL, Xiaomi a Hisense budou nabízet oba typy produktů.[19]
Android není zcela otevřený systém, ale otevřená je jeho velká část: Linuxové jádro, knihovny, API i některé základní aplikace, která je šířena pod „business-friendly“ licencí (Apache/MIT). Výrobci tak mohou systém přizpůsobit různému hardware, případně ho jakkoliv jinak použít i pro své komerční produkty nebo lépe integrovat do systému své vlastní aplikace. Přestože jsou některé části uzavřenou technologii firmy Google,[20] je jím systém prezentován jako open source. Android obsahuje i patentované softwarové technologie, které si musí výrobci mobilních telefonů licencovat.[21] Licence umožňuje výrobci instalovat na zařízení Mobilní služby Google, ovšem výrobce musí splnit řadu podmínek.[22]
Díky vydání produktu jako open source a nezávislosti na použitém hardwaru může být Android spuštěn na velkém počtu přístrojů. Tato skutečnost zapříčinila vznik velkého a ekonomicky úspěšného ekosystému tvořeného aplikacemi, vývojáři a uživateli.[23]
Správa koncových zařízení
Systém Android má do služeb Google integrovanou Správu koncových zařízení (zkratka MDM, anglickyMobile Device Management), pomocí které lze zařízení dálkově spravovat a která je implicitně na každém zařízení zapnuta. Správa je vázána na Google účet, který je součástí Google Workspace (např. firemní). Pomocí MDM lze na dálku definovat například povinné zámky obrazovky, silná hesla, případně úplně vymazat tento účet či celé zařízení a smazat tak důvěrná data. MDM umožňuje používat ve firmách tzv. vlastní zařízení zaměstnanců (BYOD) a přitom ochránit firemní data. Lze na dálku nastavit Wi-Fi, e-mailu, vložit firemní digitální certifikáty a podobně. Systém MDM funguje pro systémy Android, iOS, MacOS a Windows. Některé rozšířené funkce jsou k dispozici pouze s licencí Google Workspace Business nebo Enterprise.[24] Někteří dodavatelé poskytují vlastní řešení nebo rozšíření MDM, např. Samsung Knox.
Po odkupu společnosti tým Googlu pod vedením Andyho Rubina vyvinul platformu založenou na Linuxovém jádře a v září roku 2007 Google získal několik patentů v oblasti mobilních technologií. Odborná veřejnost začala po akvizici spekulovat, že Google chce tímto krokem vstoupit na trh „chytrých“ mobilních telefonů a chystá vydání vlastního mobilu.[26]
5. listopadu 2007 bylo vytvořeno uskupení Open Handset Alliance. Konsorcium, které zahrnovalo společnosti zabývající se výrobou mobilních telefonů, čipů nebo mobilních aplikací, např. Google, HTC, Intel, LG, Motorola, nVidia, Qualcomm, Samsung, Texas Instruments a dalších 25 společností. Cílem tohoto konsorcia bylo vyvinout otevřený standard pro mobilní zařízení. V ten samý den Open Handset Alliance ohlásil svůj první produkt, Android, otevřenou mobilní platformu postavenou na jádře Linux verze 2.6. Výkonný předseda společnosti Google Eric Schmidt dal při této příležitosti ve svém projevu najevo, že má Google s platformou Android velké plány: „Dnešní oznámení je mnohem ambicióznější, než pouhý Google telefon, jak spekuloval tisk v posledních několika týdnech. Naší vizí je, že platforma, kterou představujeme, bude moci být použita na tisících rozdílných telefonních modelech.“ O týden později byl vydán první Android SDK pro vývojáře pod licencí open-source.[9]
V říjnu roku 2008 byl ve Spojených státech amerických uveden první komerční mobilní telefon T-Mobile G1 (HTC Dream) s operačním systémem Android (v České republice byl uveden v lednu 2009) a zároveň s tím bylo uvolněno SDK 1.0. V roce 2009 vzrostl počet zařízení používající Android na více než dvacet. Na konci roku 2010 se Android stal vedoucí platformou smartphonů, na počátku roku 2012 měl 59% podíl a v roce 2013 už jednoznačně dominoval trhu s podílem 80 %.[27] Mezi lety 2008 a 2013 působil Hugo Barra jako produktový mluvčí a zastupoval Android na tiskových konferencích.
Verze operačního systému Android navržená pro chytré hodinky se jmenovala Android Wear a byla poprvé uvedena v 18. března 2014. V březnu 2018 byl Android Wear přejmenován na Wear OS.
Od první verze bylo vydáno několik aktualizací, které opravují chyby a přidávají nové funkce. Jednotlivé verze systému se jmenují abecedně podle sladkostí (Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice Cream Sandwich, Jelly Bean, KitKat, Lollipop, Marshmallow, Nougat, Oreo a Pie).[28]
Verze Androidu
Nové funkce
Android 1.0 Apple Pie
23. září 2008 byla vydána první plná verze androidu s názvem Apple Pie.
Aplikace Android Market umožnila stahování a aktualizace aplikací prostřednictvím aplikace Market
Webový prohlížeč zobrazuje, zvětšuje a posouvá plné HTML a XHTML webové stránky – více stránek se zobrazuje jako okna („karty“) [37] [38]
Podpora fotoaparátu – tato verze však neměla možnost měnit rozlišení fotoaparátu, vyvážení bílé, kvalitu atd. [39]
Složky umožňující seskupení několika ikon aplikací do jedné ikony složky na domovské obrazovce [40]
Přístup k webovým emailovým serverům, podporující protokoly POP3, IMAP4 a SMTP [38]
Synchronizace Gmailu s aplikací Gmail
Synchronizace kontaktů Google s aplikací Lidé
Synchronizace Kalendáře Google s aplikací Kalendář
Mapy Google a Street View pro zobrazení map a satelitních snímků, stejně jako lokální podnikání a získání trasy jízdy pomocí GPS [39]
Služba Google Sync umožňuje správu synchronizace přes Gmail, Lidé a Kalendář
Vyhledávání Google umožňující uživatelům vyhledávat na internetu a telefonní aplikace, kontakty, kalendář atd.
Media Player, který umožňuje správu, import a přehrávání multimediálních souborů – nicméně tato verze postrádala videa a stereo Bluetooth podporu [38] [39]
Oznámení se objevují v stavovém řádku s možnostmi nastavení vyzváněcích tónů, varování LED nebo vibrací [37] [38] [41]
Hlasové vytáčení umožňuje volat a umísťovat telefonní hovory bez zadání jména nebo čísla [38]
Tapeta umožňuje uživateli nastavit obrázek nebo fotku pozadí za ikony a widgety domovské obrazovky
Přehrávač videa YouTube [42]
Mezi další aplikace patří: Budík, Kalkulačka, Telefon (Telefon), Výchozí obrazovka (Spouštěč), Obrázky (Galerie) a Nastavení
Podpora Wi-Fi a Bluetooth
Android 1.1 Banana Bread
Podrobnosti a recenze jsou k dispozici, když uživatel vyhledává v Mapách podniky
Dlouhá předvolená doba hovoru při použití hlasitého odposlechu a možnost zobrazení / skrytí číselné klávesnice
Schopnost ukládat přílohy ve zprávách
Podpora přidána pro markýzy v rozvržení systému
1.5 (Cupcake)
linuxové jádro 2.6.27
30. dubna 2009 byla uvolněna aktualizace na Android 1.5 (Cupcake).[29] Update přidává několik nových funkcí:
Možnost nahrávat a sledovat videa z kamery.
Nahrávání videí na YouTube a fotografií na Picasu přímo z mobilu.
Nová softwarová klávesnice s automatickým dokončováním slov.
Upravena navigační lišta, pokud je zapnuta nová funkce gest – nachází se zde pouze prostřední tlačítko, avšak tlačítko zpět se objeví pokud to aplikace vyžaduje
Větší ochrana soukromí (indikátor přístupu k fotoaparátu, či mikrofonu; omezený přístup aplikací k poloze)[54]
12.1 (12L)
Optimalizace systému pro tablety a skládací zařízení, vylepšení režimu rozděleného displeje
13
Uveden 15. srpna 2022
Možnost pro ostatní aplikace mít ikonu, která se svým vzhledem přizpůsobí tapetě (v A12 jen aplikace Googlu)
Změněný přehrávač v notifikační liště
Možnost změnit aplikacím jazyk nezávisle na jazyku systému
Vylepšené a bezpečnější kopírování textu
Lepší propojení s Chromebooky
14
Uveden 15. srpna 2023
Je blokovaná instalace aplikací navržených na verze starší než Android Marshmallow 6.0 (2015), aby se zabránilo infekci malwaru.[7]
API Vulkan
Tato knihovna umožňuje lépe využít hardware, zejména založený na novějších architekturách (GCN). Toto API také má být kompatibilní s Vulkanem z desktopu. API Vulkan[55] 3D již využívá Android 7.0 Nougat.
Architektura
Architektura operačního systému Android je rozdělena do 5 vrstev. Každá vrstva má svůj účel a nemusí být přímo oddělena od ostatních vrstev.
Nejnižší vrstva architektury je jádro operačního systému, které tvoří abstraktní vrstvu mezi používaným hardwarem a zbytkem softwaru ve vyšších vrstvách. Jádrem systému Android je modifikovaný Linux, firmy vyvíjející Android tak jsou předními přispěvateli linuxového jádra.[56] V prvních verzích Androidu šlo o verze Linuxu 2.6.x, pozdější verze využívají novější linuxová jádra.[57][58][59] Je využito mnoha vlastností Linuxu, jako podpora správy paměti, správa sítí, zabudované ovladače nebo správy procesů, například souběžného běhu aplikací, které běží jako samostatné procesy s oprávněním stanoveným systémem. Tato vlastnost přispívá ke stabilitě a také ochraně systému. Naopak systém nepodporuje grafické uživatelské rozhraníX Window, init Systemd a ani úplnou sadu GNU knihoven. Důvodem použití jádra Linux byla také vlastnost poměrně snadného sestavení na různých zařízeních a tím zaručená přenositelnost.
Další vrstvou jsou knihovny, které jsou napsány v C nebo C++ kódu a využívají je různé komponenty systému. Tyto funkce jsou vývojářům poskytnuty prostřednictvím Android Application Framework. Zde jsou uvedeny pouze některé příklady knihoven:
Media Libraries – Knihovna podporuje přehrávání video a audio formátů, stejně obrazové soubory, např. MPEG4, H.264, H.265, MP3, AAC, AMR, JPG a PNG.
LibWebCore – Knihovna webového prohlížeče, který podporuje i vložené náhledy webových stránek.
Obsahuje vrstvu obsahující aplikační virtuální stroj zvaný Dalvik, který byl vyvíjen od roku 2005 speciálně pro Android, týmem v Googlu pod vedením Dana Bornsteina. Nově se používá Dalvik Turbo od francouzsko-švýcarské firmy Myriad Group, který je výrazně rychlejší a úspornější, ale zachovává kompatibilitu s původním Dalvikem.
Vznik virtuálního stroje Dalvik byl při současné existenci JVM od Oraclu iniciován ze dvou důvodů. Prvním důvodem byla licenční práva, kde jazyk Java a jeho knihovny jsou volně šiřitelné, zatímco JVM není. Dalším důvodem byla optimalizace virtuálního stroje pro mobilní zařízení, a to především v oblasti poměru úspory energie a výkonu.
V této vrstvě jsou také obsaženy základní knihovny programovacího jazyka Java. Knihovny se svým obsahem blíží platformě Java Standard Edition. Hlavní rozdíl je v nepřítomnosti knihoven pro uživatelské rozhraní (Abstract Window Toolkit a Swing), které byly nahrazeny knihovnami uživatelského rozhraní pro Android nebo přidání knihovny Apache pro práci se sítí.
Překlad aplikace napsané pro Android verze starší než 4.4 probíhá zkompilováním zdrojového javového kódu do Java byte kódu pomocí stejného kompilátoru, jako je používán v případě překladu Java aplikací. Poté se překompiluje Java byte kód pomocí kompilátoru Dalvik a výsledný Dalvik byte kód je spuštěn na DVM. Každá spuštěná androidová aplikace běží ve svém vlastním procesu, s vlastní instancí DVM.
Od verze 4.4 včetně (ART)
Od verze Androidu 4.4 (a Android 5.0) včetně se používá (ART – Android RunTime) dopředná kompilace (AOT – Ahead-of-time compilation). Důvodem jsou úspory energie a další výrazné zrychlení aplikací.
Výsledkem je až dvakrát výkonnější smartphone, který má cca o 36 % delší výdrž. Zpomalení se týká jen instalace aplikace, při které se provádí její finální optimalizace.[62][63][64]
Pro zachování kompatibility je původní kompilátor (JIT – Just-in-time compilation) Dalvik prozatím přítomen.[zdroj?]
Od verze 6.0 (Marshmallow)
Společnost Google zřejmě přichází se značnou změnou v oblasti řízení oprávnění pro aplikace v nadcházejícím systému Android.
V současné době systém Android umožňuje aplikaci buď nainstalovat a spouštět se všemi právy, nebo instalaci aplikace zcela odmítnout. To se teď mění; ona změna spočívá v rozšíření možností uživatele Androidu tak, aby aplikace získala jen skupiny práv, které nezbytně potřebuje, tedy které jí uživatel dovolí používat. Aplikace sice bude moci požádat o dodatečná práva při svém běhu, ale i tehdy jí uživatel bude moci práva odepřít. Bude tedy možné například zamezit aplikaci přístup k mikrofonu, fotoaparátu, souborům a nebo třeba k telefonnímu seznamu. Nová verze Androidu má také propracovanější správu energie.[65][66]
Application framework
Vrstva Application framework je pro vývojáře nejdůležitější. Poskytuje přístup k velkému počtu služeb, které mohou být použity přímo v aplikacích. Tyto služby mohou zpřístupňovat data v jiných aplikacích, prvky uživatelského rozhraní, upozorňovací stavový řádek, aplikace běžící na pozadí, hardware používaného zařízení a mnoho dalších služeb a funkcí. Základní sada služeb zahrnuje především:
Sada prvků View – Tyto prvky (widgety) jsou použity pro sestavení uživatelského rozhraní jako seznamy, textové pole, tlačítka, checkboxy a jiné.
Content providers – Umožňuje přístup k obsahu (např. kontakty) jiných aplikací.
Resource manager – Poskytuje přístup „nekódovým“ zdrojům, jako jsou řetězce, grafika, přidané soubory.
Notification manager – Umožňuje všem aplikacím zobrazit vlastní upozornění ve stavovém řádku.
Activity manager – Řídí životní cyklus aplikací a poskytuje orientaci v zásobníku s aplikacemi.
Nejvyšší vrstvu systému tvoří základní aplikace, které využívají běžní uživatelé. Může jít o aplikace předinstalované nebo dodatečně stažené z Android Marketu. Například e-mailový klient, SMS program, kalendář, mapy, prohlížeč, kontakty a další aplikace i od „třetích“ stran.[67]
Vývoj systému
Na tuto kapitolu je přesměrováno heslo Android Open Source Project.
Vývoj systému Google zastřešuje pod projekt AOSP (Android Open Source Project). Nové verze systému Android vycházejí ročně.
Vývoj aplikací
Oficiálně podporované vývojové prostředí pro aplikace Android je Eclipse. Do něj je možné nainstalovat ADT plugin, který ulehčuje práci s Android projektem. Vývojáři ovšem nejsou nuceni pracovat v tomto prostředí, ale mají možnost volby jiného IDE nebo jednoduchého textového editoru a kompilace aplikací pomocí příkazové řádky. V nedávné době (2014) Google odkoupil Android studio, které se začíná prosazovat jako hlavní vývojové prostředí.
Android Software Development Kit (SDK)
Nástroje pro vývoj aplikací pro platformu Android jsou obsaženy v SDK, který je dostupný pro všechny hlavní platformy operačních systémů GNU/Linux, Windows i macOS. Sada SDK je rozdělena na tři druhy: základní (nástroje nezbytné pro vývoj aplikací), doporučená a plná konfigurace vývojového prostředí.
Základní konfigurace SDK:
SDK Tools – Obsahuje nástroje pro debugging (ddms), testování aplikace, správu Android Virtual Devices (AVD), Android emulátor, analýzu grafického layoutu a další potřebné programy.
SDK Platform-tool – Obsahuje další důležité nástroje pro vývoj aplikací, které jsou závislé na verzi platformy a jsou aktualizovány při vydání nové verze SDK. Jeden z nástrojů je například Android Debug Bridge, umožňující nahrávat soubory do zařízení.
Android SDK platforms – Každá platforma SDK se skládá z knihoven, systémového obrazu, ukázkových kódů, skinů emulátoru a jiných zdrojů. Ke kompilaci aplikace a pro nastavení a běh AVD musí být přítomna alespoň jedna platforma.
Doporučená konfigurace SDK:
USB Driver – Komponenta, která je nutná pouze při ladění a testování aplikace nainstalované na zařízení. Potřebné pouze pro platformu Windows.
Příklady kódů – Obsahuje ukázkové kódy aplikací, které jsou aktuální pro každou platformu.
Dokumentace – Obsahuje lokální kopii dokumentace pro aktuální Android framework API. Tato dokumentace je také využita ve vývojovém prostředí Eclipse.
Plné konfigurace SDK:
Google API – Knihovny, zpřístupňující rozhraní Google Maps, které je možno použít v aplikacích.
Ostatní SDK platformy – To je například Market Licensing package, který obsahuje knihovnu ověřující licenci aplikace, zda se nejedná o nelegální kopii.[68]
Emulátor
Emulátor operačního systému Android je obsažen v Android SDK. Umožňuje testovat vytvořené aplikace bez fyzického zařízení. Pomocí Android SDK a AVD Manageru je možné konfigurovat volbu síťového připojení, SD karty atd. a spouštět jednotlivá virtuální zařízení.
Většina aplikací se chová v emulátoru stejně jako na fyzickém zařízení. Existují ovšem výjimečné situace, které se virtualizovat nedají nebo jen těžko, například přijímání hovorů, video/audio vstup, úroveň nabité baterie, funkce bluetooth atd.
Základní části aplikace Android
Základní stavební kameny v aplikacích Android jsou komponenty activity reprezentující obrazovku, service umožňující provádět akce na pozadí, content providers poskytující přístup k datům a broadcast reciever reagující na příchozí oznámení. Všechny tyto komponenty musí být definovány v souboru AndroidManifest.xml, uloženém v kořenovém adresáři projektu. Kromě content provideru mohou komponenty mezi sebou kooperovat pomocí zpráv, tzv. intentů.
Activity
Activity odpovídá jedné obrazovce. Obsahuje grafické uživatelské rozhraní pro interakci s uživatelem. Aplikace obsahuje obvykle více activit, mezi kterými je uživatel schopen přepínat a přitom si activity může předávat informace.
Zahájení activity je poměrně náročná záležitost. Musí se vytvořit nový proces, alokovat paměť pro objekty uživatelských rozhraní, které se rozloží do layoutu obrazovky a na připravenou obrazovku vyvolat zobrazení. Aby nedocházelo ke zbytečnému plýtvání výpočetních prostředků např. při vzniku, zániku a opětovného vzniku activity – což se jednoduše může stát při stisku tlačítka zpět na zařízení – je zde Activity Manager, který zodpovídá za vytváření, rušení a celkovou správu životního cyklu activity. Activity Manager pracuje se zásobníkem, ve kterém jsou uchované informace o spuštěných activitách, a na vrcholu tohoto zásobníku je aktuálně zobrazované activity.
Životní cyklus activity se může nacházet v těchto stavech:
Activity starts – Počátek, kdy je actvity inicializováno.
Activity is running – Activity je zobrazeno na displeji a může mít interakci s uživatelem. V jediném okamžiku může být právě jedna activity v tomto stavu.
Process is killed – Activity Manager zrušil activity z důvodu nedostatku paměti. K této akci může dojít, pokud activity není viditelné. Další možnost není tak obvyklá – activity je viditelné, ale uživatel s ní nemůže navázat interakci (nastává například při dialogových hláškách).
Activity is shut down – Activity Managerem ukončil activity a ta již nevyužívá žádnou paměť.
Service
Komponenta service neposkytuje uživatelské rozhraní, ale představuje pouze proces běžící na pozadí. Většinou se používá k vykonávání dlouho trvajících úkolů nebo k přístupu k vzdáleným zdrojům, kde není známá doba odezvy (jako je připojení k serveru). Service můžeme spustit dvěma způsoby a to pomocí metody startService. Potom se service může ukončit sama nebo ji může ukončit jiná komponenta. Další způsob spuštění je pomocí metody bindService, kterou vyvolá jiná komponenta, tzv. klient, v tomto případě service může ukončit pouze klient, který ji spustil. V jednom okamžiku může být k service navázáno pomocí metody bindService i více komponent, potom je service ukončena po odpojení všech klientů.
Service se může nacházet ve třech stavech:
Component calls – Inicializace service pouhým zavoláním nebo navázáním komponenty na service.
Service is running – Service vykonává na pozadí svou funkci.
Service is shut down – Service byl ukončen sám nebo komponentou, záleží na formě spuštění service.
Content provider
Content provider je aplikační rozhraní pro sdílení dat mezi aplikacemi, ale i pro sdílení dat v aplikaci mezi jednotlivými activitami. Aplikace může uchovávat data v souborech, SQLite databázi nebo na webu, a přesto budou mít k těmto datům přístup – pokud je to povoleno – jiné aplikace. Content provider má relativně jednoduché rozhraní se standardními metodami (insert, update, delete a query), které mají stejnou funkci jako klasické databázové metody.
Oddělení dat od uživatelského rozhraní nabízí možnost nahrazení výchozích aplikací novými. Například může jakákoliv aplikace využít uložených uživatelských kontaktů a nahradit tak výchozí aplikaci pro jejich zobrazování.
Broadcast receiver
Broadcast reciever je komponenta sloužící k „naslouchání“ oznámení. Podle určení na ně reaguje, například výpisem na stavový řádek nebo spuštěním jiné komponenty. Aplikace mohou využívat broadcasty systémové nebo vytvářet své vlastní. Podobně jako service ani broadcast receiver nemá uživatelské rozhraní. Příklad použití broadcast recieveru může být reakce na oznámení o nízkém stavu baterie, o zachycení fotografie, doručení SMS zprávy nebo stažení dat.
[69]
Android Developer Challenge
Aby společnost Google přilákala vývojáře pro tuto novou platformu, do soutěže Google Developer Challenge vložila v roce 2008 celých 10 milionů dolarů. Android Developer Challenge je soutěž vývojářů pořádaná společností Google. Do soutěže se přihlašují skupiny vývojářů či jednotlivci, kteří prezentují své aplikace pro mobilní telefony na platformě Android. Ti nejlepší se pak podle stanovených pravidel podělí o finanční odměny, z nichž mohou financovat další vývoj, a získat tak lepší šanci na úspěch v dalších kolech, ve kterých užší výběr usiluje o řádově hodnotnější finanční odměny.
První kolo začalo v květnu výběrem 50 projektů za pomoci odborné poroty, které obdržely každý 25 tisíc dolarů na další vývoj. Z těch pak bylo vybráno 10 vítězů (každý vítězný projekt dostal 275 tisíc $) a dalších deset týmů dostalo sto tisíc dolarů. Podobné druhé kolo soutěže se konalo následující rok.
Google Play a instalace aplikací obecně
Aplikace do zařízení s operačním systémem Android jsou primárně dostupné přes tzv. Google Play (do února 2012 Android Market), což je služba určená pro stahování aplikací a her, kterou provozuje přímo Google. Byla dostupná již s uvedením prvního mobilního telefonu a v květnu 2011 na ní bylo více než 290 000 aplikací, z nichž část je zcela zdarma a část je ke stažení zdarma a při spuštění zobrazuje reklamy. Zbylé aplikace jsou placené – ty lze zatím kupovat jen v omezené množině zemí, která se ovšem rozrůstá (toto omezení platí pouze pro placené aplikace).
V únoru 2011 byl Android Market rovněž zpřístupněn přes Internet. Uživatelé tak mohou ze svého PC procházet seznamy aplikací a rovněž si vybírat ty, které se automaticky nainstalují na jejich mobilní zařízení. Veškerá tato funkcionalita byla do té doby přístupná pouze z mobilního zařízení.[70]
Protože Android je však otevřenou platformou, aplikace na ni je možné nahrávat i přímo např. z počítače (postupy jsou zdokumentované a podporuje je i samotné Android SDK).
Pro ty, kteří by chtěli modifikovat i samotné vlastnosti operačního systému, existují postupy, jak získat oprávnění administrátora v zařízení (administrátor se nazývá v Linuxu root [ruːt], proto se těmto postupům říká rooting [ˈruːtiŋ]). Je potřeba podotknout, že takové změny nejsou oficiálně podporované a mohou porušit některá obchodní ustanovení a vést např. ke ztrátě záruky a podpory zařízení.
Zastoupení na trhu
Společnost Canalys odhadovala, že ve druhém čtvrtletí 2009 měl Android 2,9 % na trhu tzv. chytrých mobilních telefonů, ve třetím čtvrtletí to bylo 3,5 %.[71]
V květnu 2010 již ale Android zřejmě předběhl v USA iPhone co do počtu prodaných telefonů svým podílem 28 % na trhu v USA.[72]
V červenci 2011 Google oznámil, že je aktivováno každý den 550 tisíc zařízení se systémem Android.[73]
V druhém čtvrtletí roku 2011 je android na 48 % prodaných mobilů.[74]
V letech 2012–2016 už Android jednoznačně dominoval trhu s podílem okolo 80 %.[75]
V roce 2018 Android dosáhl 86% tržního podílu.[76]
V roce 2022 dosáhl Android 76% tržního podílu.[77]
V roce 2023 dosáhl Android 81% tržního podílu.[78]
Bezpečnost
Podle informací webu Gizmodo nasazení přístrojů s Androidem ve firmách postupně zpomalovalo.[79]
Na vině jsou chybějící funkce pro podnikové nasazení spojené zejména s dostatečným zabezpečením a správou. Podle kritiků Androidu chybí zejména podpora šifrování dat, včetně enkrypce SD karet a také lepší systém ochrany proti malwaru, který se v poslední době na přístroje s Androidem zaměřuje ve velkém. Dále OS Android potřebuje snadný systém pro možnost vymazávání dat administrátory na dálku a také pokročilou schopnost sledování přístroje při ztrátě či odcizení.
Androidu příliš neprospěla ani šokující skutečnost, na kterou v květnu 2011 upozornil web The Register, že totiž 99 % mobilů používajících platformu Android obsahuje chyby dovolující například reklamním společnostem krádež přihlašovacích údajů používaných k přístupu ke kalendářům, kontaktům a dalším citlivým údajům. Poté, co uživatel odešle přihlašovací údaje k nějaké webové službě, dostane zpátky tzv. přihlašovací token, kterým si webová služba nadále ověřuje identitu uživatele aniž by po něm znovu vyžadovala heslo a který je pak možné k přihlášení použít další dva týdny. Tento token je navíc odesílán nešifrovaný a tak každý, kdo jej získá, může jednoduše webovou službu přesvědčit, že je oprávněn k přístupu na účet daného uživatele. Tato bezpečnostní díra byla částečně opravena v Androidu verze 2.3.4, přesto však i tato verze stále umožňuje podobný útok například při synchronizaci se službou Picasa.[80]
Podle webu ICT manažer pak Google prý není schopný sám Android přeměnit v platformu, která by odpovídala požadavkům korporátních uživatelů a zůstane tak spíše orientovaný na koncové uživatele. Android je sice možné využívat ve firmách, ale jen v omezené míře, pokud jej uživatelé nebudou používat pro práci s informacemi.[81]
V listopadu 2017 server The Hacker News informoval o tom, že přes 700 milionů telefonů s Androidem obsahuje backdoor společnosti Shanghai AdUps Technology, který získává data uživatelů a posílá je do Číny.[82] Backdoor prohledává obsah SMS, seznam kontaktů, seznam volání, lokační údaje a další osobní informace a posílá je každých 72 hodin.[82] Backdoor byl objeven v systémových aplikacích com.adups.fota.sysoper a com.adups.fota, z nichž ani jedna nemůže být zakázána nebo odinstalována uživatelem.[82]
Česká Android komunita
V Česku se zvedl zájem o operační systém Android již v době, kdy se na trhu začal prodávat první mobilní telefon s tímto systémem, tedy T-Mobile G1. Od 23. září 2008 začalo fungovat české fórum o Androidu AndroidForum, které založil Martin Vorel a kolem něhož i v současnosti existuje velká komunita s více než 91 000 členy (k 3. listopadu 2020). O velkou oblibu se pravděpodobně zasloužil otevřený software Androidu.[83]
Odkazy
Poznámky
↑Operačním systémem jsou zde míněny systémy ovládané lidmi v běžných počítačích. Ve skutečnosti jsou na světě nejvíce rozšířené malé jednočipové počítače s běžně neznámými operační systémy (obvykle RTOS) nebo ani žádné operační systémy nemají. Například v každém chytrém telefonu je několik jednočipových počítačů, které mají na starosti Wi-Fi, GPS, obsluhu dotykové plochy a podobně[3] a systém Android jen využívá jejich služeb.
↑ČERNÝ, Michal. Proč jsou monopoly problém: pár střípků z Google a politiky. root.cz [online]. 22. 5. 2019. Dostupné online. ISSN1212-8309.
↑HOLWERDA, Thom. The second operating system hiding in every mobile phone. OSnews [online]. OSNews Inc., 2013-11-12 [cit. 2017-02-09]. Dostupné online. (anglicky)
↑MANJOO, Farhad. A Murky Road Ahead for Android, Despite Market Dominance. Ilustrace Stuart Goldberg; fotografie Credit John G. Mabanglo/European Pressphoto Agency, Marcio Jose Sanchez/Associated Press. [s.l.]: The New York Times Company, 2015-05-27. Dostupné online. (anglicky)
↑Top Mobile Operating Systems Per Country, Jan 2016. [s.l.]: [s.n.] Dostupné online. Statcounter.com. (anglicky)
↑CRANZ, Alex. There are over 3 billion active Android devices [online]. 2021-05-18 [cit. 2022-03-24]. Dostupné online. (anglicky)Je zde použita šablona {{Cite web}} označená jako k „pouze dočasnému použití“.
↑ ab Android 14 blocks apps targeting old Android versions. Bayton.org [online]. 2023-06-23. Dostupné online.
↑ Welcome to the Android Open Source Project. Android Open Source Project [online]. Open Handset Alliance [cit. 2022-06-08]. Dostupné online. (anglicky)
↑ abIndustry Leaders Announce Open Platform for Mobile Devices [online]. Open Handset Alliance, 2007-11-05 [cit. 2011-05-02]. Dostupné online. (anglicky)
↑MAJER, Radovan. Google ukončí podporu známé verze Androidu. Nemáte ji?. MoneyMAG.cz [online]. 2024-07-19 [cit. 2024-09-27]. Dostupné online.
↑VONAU, Manuel. Google’s new photo picker is now available on virtually all Android phones. Android Police [online]. 2022-11-04 [cit. 2022-11-05]. Dostupné online. (anglicky)
↑RAHMAN, Mishaal. Android Photo Picker: How Google is bringing it to older versions [online]. 2022-08-10 [cit. 2022-11-05]. Dostupné online. (anglicky)
↑DUCHOSLAV, Martin. Které Samsungy mají nárok na 7 upgradů Androidu? [online]. SamsungMagazine.eu, 2024-08-25 [cit. 2024-09-27]. Dostupné online.
↑Treble Plus One Equals Four [online]. [cit. 2022-06-08]. Dostupné online. (anglicky)
↑TCYMBAL, Fedor. Project Treble. What Makes Android 8 different? [online]. Mera, 2019-08-11 [cit. 2022-11-05]. Dostupné online.
↑KARÁSEK, Jakub. Project Treble je revolucí v aktualizování systému Android. Současné Nokie jej však nedostanou. SMARTmania.cz [online]. 2017-12-06 [cit. 2024-09-27]. Dostupné online.
↑AMADEO, Ron. Report: Google will graciously let Android OEMs build Amazon Fire devices. Ars Technica [online]. 2022-10-28 [cit. 2022-10-29]. Dostupné online. (anglicky)
↑Pulser_G2. Say Sayonara to Google Apps [online]. 2013-06-03 [cit. 2017-03-11]. Dostupné online. (anglicky)
↑NEWMAN, Jared. Microsoft-Samsung Patent Deal: Great News for Windows Phones [online]. IDG Communications, Inc., 2011-09-28 [cit. 2017-03-11]. Dostupné online. (anglicky)
↑CHROUST, Martin. Co všechno musí výrobce splnit, aby mohl do telefonu dát Android se službami od Googlu. MobilMania.cz [online]. Czech News Center, 2022-10-18 [cit. 2022-10-22]. Dostupné online.
↑GARGENTA, Marko. Learning Android : Building Applications for the Android Market. [s.l.]: O'Reilly Media, 2011. Dostupné online. ISBN978-1-4493-9050-1. S. 268. (anglicky)
↑ Správa mobilních zařízení Google – řešení MDM. Google Workspace [online]. [cit. 2024-12-30]. Dostupné online.
↑ELGIN, Ben. Google Buys Android for Its Mobile Arsenal [online]. Bloomberg L.P., 2005-08-17 [cit. 2011-05-02]. Dostupné v archivu pořízeném dne 2011-08-19. (anglicky)
↑Android zvýšil podíl na trhu chytrých telefonů na 80 procent [online]. Economia, a.s., 2013-08-08 [cit. 2013-08-08]. Dostupné v archivu pořízeném dne 2017-10-23.
↑DIETER, Bohn. Google releases Android O to developers, promising better battery life and notifications [online]. Vox Media, Inc., 2017-04-21 [cit. 2017-06-03]. Dostupné online. (anglicky)
↑DUCROHET, Xavier. Android 1.5 is here! [online]. 27 April 2009 [cit. 2009-09-03]. (Android Developers Blog). Dostupné online.
↑DUCROHET, Xavier. Android 1.6 SDK is here [online]. 15 September 2009 [cit. 2009-10-01]. (Android Developers Blog). Dostupné online.
↑Android 2.1 / Eclair on Google Nexus One [online]. [cit. 2010-01-05]. (Android Developers). Dostupné v archivu pořízeném dne 2010-04-12. (Eclair)
↑Android 2.0, Release 1 [online]. [cit. 2009-10-27]. (Android Developers). Dostupné v archivu pořízeném dne 2009-10-28.
↑Android 2.0 Platform Highlights [online]. [cit. 2009-10-27]. (Android Developers). Dostupné v archivu pořízeném dne 2009-10-29.
↑Android 2.0.1, Release 1 [online]. [cit. 2010-01-17]. (Android Developers). Dostupné v archivu pořízeném dne 2010-01-15.
↑Android 2.1, Release 1 [online]. [cit. 2010-01-17]. (Android Developers). Dostupné v archivu pořízeném dne 2010-01-14.
↑SWETLAND, Brian. Some clarification on "the Android Kernel" [online]. 7 February 2010 [cit. 2010-02-21]. (Lwn.net). Dostupné online.
↑Gingerbread to Be Android 2.3, Statue Arrives at Google Campus - Softpedia [online]. News.softpedia.com, 2010-10-23 [cit. 2010-10-29]. Dostupné online.
↑When will other Google products support WebM and VP8? [online]. [cit. 2010-05-20]. (The WebM Project). Dostupné online.
↑VELAZCO, Chris. Google Announces 1B Total Android Activations, Names Next Version ‘KitKat’. Ilustrace Themendous. techcrunch.com [online]. AOL Inc., 2013-09-03 [cit. 2013-09-03]. Dostupné online. (anglicky)
↑mrk. Google odstranil z nového Androidu nástroj pro ochranu soukromí. Ve staré verzi byl jen "náhodou". Fotografie Thinkstock. iHNed.cz [online]. Economia, a.s., 13. 10. 2016 [cit. 2016-10-23]. Celý článek jen pro předplatitele. Dostupné online.
↑Nový Android 5.0 sa volá lízanka, má byť výrazne lepší [online]. 2014-10-16 [cit. 2017-03-11]. Dostupné online. (slovensky)
↑CUNNINGHAM, Andrew. Google quietly backs away from encrypting new Lollipop devices by default [online]. WIRED Media Group, 2015-02-03 [cit. 2017-03-11]. Dostupné online. (anglicky)
↑BENSON, Matthew. Android Lollipop 5.1 factory images are now ready for download [online]. 2015-03-09 [cit. 2017-03-11]. Dostupné online. (anglicky)
↑BURKE, Dave. Android 5.1: Unwrapping a new Lollipop update [online]. 2015-03-09 [cit. 2017-03-11]. Dostupné online. (anglicky)
↑TUNG, Liam. Google fixes Android 5.1 memory leak - but when will users receive it?. Www.zdnet.com. ZDNet.com [online]. [cit. 2015-05-06]. Dostupné online. (anglicky)
↑BRODKIN, Jon. Google and Samsung soar into list of top 10 Linux contributors [online]. WIRED Media Group, 2013-09-16 [cit. 2017-05-20]. Dostupné online. (anglicky)
↑Fine Oils: Ice Cream Sandwich Runs on Linux Kernel 3.0.1 [online]. 2011-10-19 [cit. 2016-01-14]. Dostupné online. (anglicky)
↑BRIDEN, Paul. Android 4.2 Jelly Bean lands on Nexus 7 [online]. Dennis Publishing Limited., 2014-11-14 [cit. 2017-05-20]. Dostupné v archivu pořízeném dne 2017-07-31. (anglicky)
↑OpenGL ES [online]. Android developers [cit. 2014-06-20]. Dostupné v archivu pořízeném dne 2019-02-24. (anglicky)
↑Android dostane rýchlejší runtime už v najbližšej verzii [online]. DSL.sk, 2014-06-20 [cit. 2017-05-20]. Dostupné online. (slovensky)
↑Google ukázal nový Android L, je dvakrát výkonnejší, má dlhšiu výdrž a vyzerá inak [online]. DSL.sk, 2014-06-26 [cit. 2017-05-20]. Dostupné online. (slovensky)
↑ Canalys: iPhone outsold all Windows Mobile phones in Q2 2009. AppleInsider. 2009-08-21. Dostupné online [cit. 2009-09-21].
↑comScore Reports May 2010 U.S. Mobile Subscriber Market Share - comScore, Inc [online]. Comscore.com, 2010-07-08 [cit. 2010-10-29]. Dostupné online.
↑ Google activates 500,000 Android devices a day, may reach 1 million in October. Yahoo News. 2011-06-28. Dostupné online [cit. 2011-07-18].[nedostupný zdroj]
↑ Canalys: Android has almost half of global smartphone market, Microsoft has one percent. Linux for devices. QuinStreet Inc., 2011-08-01. Dostupné online [cit. 2017-05-20]. (anglicky)[nedostupný zdroj]
↑Global mobile OS market share in sales to end users from 1st quarter 2009 to 1st quarter 2016 [online]. [cit. 2017-05-20]. Dostupné online. (anglicky)
↑LÁSKA, Jan. Podíl Androidu stále roste. Na systému od Googlu běželo 86 % loni koupených smartphonů. MobilMania.cz [online]. [cit. 2020-11-03]. Dostupné online.
↑SARKAR, Amy. HarmonyOS gain against iOS and Android [online]. 2023-03-30 [cit. 2023-12-26]. Dostupné online. (anglicky)
↑CHROUST, Martin. Začal jako plán B, letos má HarmonyOS v Číně z druhého místa sesadit iOS. Ve zbytku světa ale pokulhává. MobilMania.cz [online]. [cit. 2024-01-08]. Dostupné online.
↑PASTUCHOVÁ, Markéta. Android: Vysoká bezpečnostní rizika odrazují firmy [online]. 2011-10-17 [cit. 2017-03-11]. Dostupné v archivu.
↑ abcKHANDELWAL, Swati. Pre-installed Backdoor On 700 Million Android Phones Sending Users' Data To China. The Hacker News [online]. Tuesday, November 15, 2016. Dostupné online.
↑ Velký pohled na mobilní operační systémy v roce 2013: Android a ti druzí aneb jak vypadá rodící se konkurence nejpopulárnějších OS?. Cdr.cz [online]. Dostupné online.