Android (operační systém)

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Android je mobilní operační systém založený na otevřeném software, který byl vyvinut společností Google. Systém je určený pro chytré telefony, tablety, televize, hodinky a další zařízení. Android je založen na jádře Linux a poskytuje uživatelům možnost využívat různé aplikace a služby, které jsou dostupné prostřednictvím Google Play Store. Operační systém Android je známý svou otevřeností a flexibilitou, což umožňuje uživatelům přizpůsobit si svá zařízení podle svých potřeb. Android se stal jedním z nejpopulárnějších operačních systémů pro mobilní zařízení a v současnosti dominuje na trhu.

LG Nexus 5 Samsung i9250 Galaxy Nexus LG Leon Android (stylizováno jako android, anglická výslovnost [ˈændroid]) je mobilní operační systém založený na jádře Linuxu, který je dostupný jako otevřený software (open source). Obvykle je doplněn o proprietární software, který poskytuje důležité služby. Je používán na smartphonech, tabletech, chytrých televizích a dalších zařízeních. Vývoj Androidu vede firma Google pod hlavičkou konsorcia firem Open Handset Alliance a výrobci různých zařízení mohou Android upravovat při dodržení stanovených podmínek. Název Android je často doplněn o název prostředí, které vyvíjí sám vývojář (například MIUI od Xiaomi, One UI od Samsungu), nebo je zcela vynechán, pokud jsou změny příliš velké (například systémy YunOS, Fire OS, OxygenOS, LineageOS).

Systém Android má největší zastoupení na světě mezi všemi operačními systémy. Na smartphonech je nejrozšířenější od roku 2011, na tabletech od roku 2013. +more V květnu 2021 měl Android celosvětově přes 3 miliardy aktivních uživatelů měsíčně.

...
...
...
...
...
+more images (2)

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). 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í. +more 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. 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). +more 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. +more je do AOSP potřeba dodat podpůrné programové vybavení, což je obvykle proprietární software, například:.

* Google -⁠ Mobilní služby Google a obchod s aplikacemi Google Play * Huawei -⁠ Huawei Mobile Services, obchod s aplikacemi Huawei AppGallery a nadstavba EMUI * Microsoft -⁠ Microsoft mobile services * Amazon -⁠ Amazon Appstore

Aktualizace

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. +more 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. +more 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).

Samotný systém Android je v mobilním zařízení aktualizován buď přes USB konektor z počítače nebo metodou OTA (Over-The-Air). Při metodě OTA výrobce poskytne 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í. +more Vydávání aktualizací zejména u levnějších zařízení vázne nebo není k dispozici vůbec. 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. Výsledkem bylo vzájemné oddělení jádra systému, ovladačů, frameworku, nadstaveb výrobců a hardware mobilního zařízení. Díky projektu Treble mohou výrobci přebírat přímo od Google aktualizace, které zasahují do jádra, grafického subsystému, systémových aplikací a podobně bez nutnosti úprav jejich vlastního software (nadstavby, aplikace pro fotoaparát a podobně). Bezpečnostní aktualizace Google vydává každý měsíc.

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. +more 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 vlastnicví 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ů.

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. +more Přestože jsou některé části uzavřenou technologii firmy Google, 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. Licence umožňuje výrobci instalovat na zařízení Mobilní služby Google, ovšem výrobce musí splnit řadu podmínek.

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.

Historie

Společnost Android Inc. byla založena v Kalifornii v říjnu 2003 Andym Rubinem, Richem Minerem, Nickem Searsem a Chrisem Whitem. +more Google Inc. v srpnu roku 2005 odkoupil v té době nepříliš známou startup společnost Android Inc. a udělal z ní svoji dceřinou společnost.

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.

5. listopadu 2007 bylo vytvořeno uskupení Open Handset Alliance. +more 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. 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.

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. +more 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 %.

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. +more V březnu 2018 byl Android Wear přejmenován na Wear OS. T-Mobile G1.

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. +more V prvních verzích Androidu šlo o verze Linuxu 2. 6. x, pozdější verze využívají novější linuxová jádra. 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. +more 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. * Libc - Odvozená BSD standardní knihovna systému C vyladěná pro embedded zařízení. * SQLite - Odlehčená relační databázová knihovna. * OpenSSL - Secure sockets layer. * FreeType - Knihovna pro rendering bitmapových a vektorových fontů. * OpenGL ES - Knihovna na vykreslování 3D grafiky a akceleraci výpočtů (jako OpenGL a OpenCL na osobním počítači).

Android Runtime

Do verze 4.3

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í. +more 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. +more 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í. +more 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. +more0) 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í.

Dopředná kompilace v Androidu 4. 4+ funguje tak, že se aplikace napsaná ve zdrojovém kódu Javy přeloží pomocí kompilátoru do Java byte kódu, a následně se přeloží do byte kódu Dalviku (. +moreDEX). Při instalaci do Androidu se jednou pro vždy zkompiluje do nativního kódu (procesoru) zařízení.

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.

Pro zachování kompatibility je původní kompilátor (JIT - Just-in-time compilation) Dalvik prozatím přítomen.

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. +more 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.

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. +more 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. +more Například e-mailový klient, SMS program, kalendář, mapy, prohlížeč, kontakty a další aplikace i od „třetích“ stran.

Historie verzí

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). +more

Verze AndroiduNové funkce
Android 1. 0 Apple Pie23. 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. * Rychlé zasílání zpráv Google Talk * Okamžité zasílání zpráv , textové zprávy a MMS * 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 BreadPodrobnosti 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. 2730. dubna 2009 byla uvolněna aktualizace na Android 1. 5 (Cupcake). 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. * Bluetooth - podpora A2DP. * Možnost automaticky připojit Bluetooth headset. * Nové widgety a složky. * Animace při přechodu mezi obrazovkami. * Rozšířena funkce kopírovat a vložit. http://developer. android. com/about/versions/android-1. 5-highlights. html
1. 6 (Donut) linuxové jádro 2. 6. 2915. září 2009 bylo uvolněno 1. 6 (Donut) SDK. Změny: * Vylepšený Android Market. * Nové prostředí fotoaparátu, kamery a galerie. * Galerie umožňuje označit více fotografií k vymazání. * Aktualizované vyhledávání hlasem. * Quick Search Box - umožňuje vyhledávat záložky, historii, kontakty a na webu z domovské obrazovky. * Podpora pro technologie CDMA/EV-DO, 802. 1x, VPN, Gesta a syntéza řeči. * Podpora pro rozlišení displeje WVGA. * Vylepšení rychlosti vyhledávání a kamery. http://developer. android. com/about/versions/android-1. 6-highlights. html
2. 0/2. 1 (Eclair) linuxové jádro 2. 6. 2926. října 2009 bylo uvolněno 2. 0 (Éclair) SDK. Mezi změny patří: * Optimalizována rychlost hardwaru. * Podpora pro více velikostí a rozlišení displeje. * Zdokonalené uživatelské prostředí. * Nové prostředí prohlížeče a podpora HTML5. * Nový seznam kontaktů. * Mapy Google aktualizovány na 3. 1. 2. * Podpora pro Microsoft Exchange. * Podpora přisvětlovací diody. * Digitální zoom (fotoaparát). * Vylepšená softwarová klávesnice. * Podpora pro Bluetooth 2. 1. * Animované tapety na domovské stránce. http://developer. android. com/about/versions/android-2. 0-highlights. html 2. 1 SDK bylo vydáno dne 3. prosince 2009. 2. 1 SDK byla vydána dne 12. ledna 2010.
2. 2 (Froyo)linuxové jádro 2. 6. 3220. května 2010 na konferenci Google I/O byl představen Android 2. 2. Přidává nové technologie a funkce uživatelského prostředí: * Možnost instalovat aplikace na paměťovou kartu. * Adobe vydalo plugin Adobe Flash 10. 1. Není integrován do systému, distribuce je řešena přes Android Market nebo přes stránky Adobe. * Díky kompilátoru JIT (Just-in-time) se podařilo zvýšit rychlost systému na různých benchmarcích 2× až 5×. Dále je vylepšena správa paměti RAM. * Možnost vytvořit z mobilu WiFi hotspot, nebo sdílet internetové připojení přes kabel USB. * Dva nové režimy telefonu - „car mode“ a „night mode“ (režim v autě a noční režim). * Více nastavení fotoaparátu a kamery. * Přidána podpora pro OpenGL ES 2. 0, vícebarevný trackball, vylepšena podpora pro Exchange, Bluetooth a přidána další vrstva vývojářského API. http://developer. android. com/about/versions/android-2. 2-highlights. html
2. 3/2.

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. +more API Vulkan 3D již využívá Android 7. 0 Nougat.

Vývoj systému

Vývoj systému Google zastřešuje pod projekt AOSP (Android Open Source Project). Nové věrze 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. +more 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. +more 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. +more * 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.

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í. +more 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. +morexml, 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. +more 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). +more 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. +more 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. +more 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.

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. +more 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ů. +more 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. +more 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í. +more Veškerá tato funkcionalita byla do té doby přístupná pouze z mobilního zařízení.

Kromě oficiálního repozitáře aplikací fungují i konkurenční a neoficiální repozitáře - např. Amazon Appstore nebo F-Droid, který obsahuje jen svobodné aplikace.

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ř. +more 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 %. +more * 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. * V červenci 2011 Google oznámil, že je aktivováno každý den 550 tisíc zařízení se systémem Android. * V druhém čtvrtletí roku 2011 je android na 48 % prodaných mobilů * V letech 2012-2016 už Android jednoznačně dominoval trhu s podílem okolo 80 %. * V roce 2018 Android dosáhl 86% tržního podílu.

Bezpečnost a firemní nasazení

Podle informací webu Gizmodo nasazení přístrojů s Androidem ve firmách postupně zpomalovalo. Na vině jsou chybějící funkce pro podnikové nasazení spojené zejména s dostatečným zabezpečením a správou. +more 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. +more 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.

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.

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. 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. +more Backdoor byl objeven v systémových aplikacích com. adups. fota. sysoper a com. adups. fota, z nichjž ani jedna nemůže být zakázána nebo odinstalována uživatelem.

Č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 +more_září'>23. září 2008 začalo fungovat české fórum o Androidu [url=https://androidforum. cz]AndroidForum[/url] , 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žila nízká pořizovací cena zařízení běžících na Androidu.

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top