Mark L. Murphy. Android 2 Průvodce programováním mobilních aplikací



Podobné dokumenty
Obsah. Úvodem KAPITOLA 1 Začínáme KAPITOLA 2 Projekty a jejich cíle...25

Úvodem 17. Začínáme 21. Výzvy vývoje aplikací pro chytré telefony 22 Z čeho se aplikace pro systém Android skládají 23 Co máte k dispozici 24

Obsah. Úvodem 9 Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10

Obsah. Úvod 7 Zpětná vazba od čtenářů 7 Dotazy 8 Errata 8 Poznámka k aktuálnosti 8 Konvence použité v knize 8

Obsah. Úvodem 9. Kapitola 1 Než začneme 11. Kapitola 2 Dynamické zobrazování obsahu 25. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10

Allen Grant. Android 4. Průvodce programováním mobilních aplikací

Obsah. O autorech 9 Earle Castledine 9 Myles Eftos 9 Max Wheeler 9 Odborný korektor 10. Předmluva 11 Komu je kniha určena 12 Co se v knize dočtete 12

Obsah. Úvod 11. Vytvoření emulátoru 20 Vytvoření emulátoru platformy Android 4.4 Wearable 22 Spouštění aplikací na reálném zařízení 23

Obsah. Část I Začínáme s jazykem AppleScript

Obsah. Úvod. Kapitola 1. Kapitola 2. Co budete potřebovat 11 Rozlišení sítí podle přenosového média 12 Kabelová síť 13 Bezdrátová síť 14

Obsah. Úvod 11 O autorovi 11 Koncept knihy 11 Zpětná vazba od čtenářů 12 Zdrojové kódy ke knize 12 Errata 12 ČÁST I VÝVOJ MOBILNÍ APLIKACE

Úvodem 9. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10. Než začneme 11

EPLAN Electric P8 2.7 s databázemi na SQL serveru

KAPITOLA 1 SOCIÁLNÍ SÍTĚ A PHP...17

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý

MBI - technologická realizace modelu

Databázové aplikace pro internetové prostředí PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku

Úvodem Seznámení s HTML Rozhraní Canvas... 47

1 Webový server, instalace PHP a MySQL 13

!! UPOZORNĚNÍ!! Po nainstalování programu nezapomeňte instalovat Sestavy a Aktualizaci!! Pokyny k instalaci

1. Začínáme s FrontPage

Messenger. Novell 1.0 UMÍSTĚNÍ DOKUMENTACE K PROGRAMU NOVELL MESSENGER. STRUČ NÁ ÚVODNÍ PŘ ÍRUČ KA

ZŠ ÚnO, Bratří Čapků 1332

STRUČNÁ PŘÍRUČKA. Instalace ovladačů Nokia Connectivity Cable Drivers

Instalace a první spuštění Programu Job Abacus Pro

Aplikace GoGEN Smart Center

Motorola Phone Tools. Začínáme

Programovací software ConfigTool. Základní obsluha a postup připojení k zařízení přes USB a GPRS. Verze 2.00

HLEDEJCENY.mobi. Obsah. Mobilní verze e-shopu. Důvody instalace

ČÁST 1. Základy 32bitového programování ve Windows

Adobe Illustrator CS5

Rychlé nastavení mobilní aplikace Novell Vibe

1. Webový server, instalace PHP a MySQL 13

STRUČNÁ PŘÍRUČKA. Instalace ovladačů Nokia Connectivity Cable Drivers

2011 Všechna práva vyhrazena. Stručné pokyny k zařízení Acer ICONIA TAB Model: A500/A501 Původní vydání: 4/2011. Acer ICONIA TAB.

Návod k obsluze. (vydání pro aktualizaci z verze ColorNavigator 6) Software pro správu barev. Verze 7.0. Důležité

Nastavení telefonu T-Mobile MDA Compact III

Android. Programujeme pro. Jiří Vávrů, Miroslav Ujbányai. DRUHÉ, rozší řené v ydání

KOMPONENTY APLIKACE TreeINFO. Petr Štos ECM Business Consultant


Ukázka knihy z internetového knihkupectví

Obsah. Úvod 11 Základy programování 11 Objektový přístup 11 Procvičování 11 Zvláštní odstavce 12 Zpětná vazba od čtenářů 12 Errata 13

Poznámky k verzi Remote support platform 3.1

OmniTouch 8400 Instant Communications Suite. Integrace aplikace Microsoft Outlook. Připojení ke službám na vyžádání

Interaktivní funkce Selfnet TV

Vývoj SW pro mobilní zařízení s ios. Petr Hruška, Skymia s.r.o. Teorie a praxe IP telefonie,

Návod k využívání interaktivních funkcí

.NET Framework verze Program pro připojení ke vzdálené ploše (RDC) verze

Výplatní pásky. Obsah. 1. Přihlášení do aplikace. Uživatelská dokumentace (poslední aktualizace )

MODEM OPTIONS PRO TELEFON NOKIA 3650 ÚVODNÍ PŘÍRUČKA PROGRAMU

Připojení ke vzdálené aplikaci Target 2100

FORMÁTOVÁNÍ 1. Autor: Mgr. Dana Kaprálová. Datum (období) tvorby: září, říjen Ročník: sedmý. Vzdělávací oblast: Informatika a výpočetní technika

Kapitola 1 První kroky v tvorbě miniaplikací 11

Podrobný návod na instalaci programu HiddenSMS

BMOF011 Aplikace MS Office. Word 2016 Lekce 4 Bibliografie. Matěj Karolyi IBA LF MU,

pro blbce Vladimír Klaus Doostřování fotografií

Windows 10 (5. třída)

Postup pro přihlášení k EET

Obsah. Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14

Word Lekce III. a IV.

Minimální požadavky na systém Linux a Windows na jednom disku Zrušení instalace Mandriva Linuxu... 23

TELEFONNí LiNKA PREMiUM PRŮVODCE APLIKACí T UC-ONE - PC

Windows 8.1 (5. třída)

Citrix klient a OneTimePass moje.cpas.cz. Uživatelský návod pro interní uživatele České pojišťovny a.s.

Program usbradonview Návod k obsluze

Uživatelský manuál - základ PiPO U6

Uživatelská příručka

Příručka Google Cloud Print

Zpětná vazba od čtenářů 11 Dotazy 11 Zdrojové kódy ke knize 11 Errata 11 Typografické konvence použité v knize 12

MANUÁL K APLIKACI VYČÍTÁNÍ KARET ŘIDIČŮ PŘÍRUČKA PRO UŽIVATELE

SMART Notebook v.10 PRO PEDAGOGY - orientace v programu

Provozní pokyny Aplikační stránky

TIA Selection Tool manuál pro použití

Naším cílem je Vaše spokojenost...

Instalace pluginů pro formuláře na eportálu ČSSZ

Příručka Google Cloud Print

Uživatelský manuál - základ PiPO M6

Network Video Recorder Uživatelský manuál

Nejlepší zabezpečení chytrých telefonů

Microsoft Word základní

Vstupní požadavky, doporučení a metodické pokyny

Instalace a od-instalace aplikace Google / Android

ERP informační systém

Stručný obsah. Úvod 15. KAPITOLA 1 První kroky v systému Windows KAPITOLA 2 Hlavní panel a jeho možnosti 41. KAPITOLA 3 Soubory a složky 51

Uživatelský manuál - základ PiPO P1

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Provozní pokyny. Aplikační stránky

OBSAH. Kontrola aktualizací... 18

ZŠ ÚnO, Bratří Čapků 1332

Certifikát. První kroky s certifikátem

Aktualizace softwaru Uživatelská příručka

Aktualizace softwaru Uživatelská příručka

Uživatelský manuál - základ PiPO U2

Aplikace gdmss, idmss V

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

ČSOB Business Connector instalační příručka

Pro uživatele nástroje RICOH Smart Device Connector: Konfigurace zařízení

OBSAH. Word. První spuštění a hlavní obrazovka Wordu 3 Základní nastavení Wordu 6 Kontrola pravopisu a mluvnice 8 Nastavení ukládání dokumentu 12

Uživatelská příručka T UC-One pro windows

Transkript:

Mark L. Murphy Android 2 Průvodce programováním mobilních aplikací Computer Press Brno 2012

Android 2 Průvodce programováním mobilních aplikací Mark L. Murphy Překlad: Jakub Mužík Obálka: Martin Sodomka Odpovědný redaktor: Martin Herodek Technický redaktor: Jiří Matoušek Original edition copyright 2010 by Mark L. Murphy. All rights reserved. Czech edition copyright 2011 by Computer Press. All rights reserved. Autorizovaný překlad z originálního anglického vydání Beginning Android 2. Originální copyright: Mark L. Murphy, 2010. Překlad: Computer Press, a.s., 2011. Objednávky knih: http://knihy.cpress.cz www.albatrosmedia.cz eshop@albatrosmedia.cz bezplatná linka 800 555 513 ISBN 978-80-251-3194-7 Vydalo nakladatelství Computer Press v Brně roku 2012 ve společnosti Albatros Media a. s. se sídlem Na Pankráci 30, Praha 4. Číslo publikace 16 508. Albatros Media a. s. Všechna práva vyhrazena. Žádná část této publikace nesmí být kopírována a rozmnožována za účelem rozšiřování v jakékoli formě či jakýmkoli způsobem bez písemného souhlasu vydavatele. Dotisk 1. vydání

Stručný obsah Úvodem 17 1. Začínáme 21 2. Projekty a jejich cíle 25 3. Vytvoření kostry aplikace 35 4. Používání návrhů založených na XML 41 5. Využití základních widgetů 47 6. Práce s kontejnery 57 7. Widgety nabídek 73 8. Hrátky s výčty 87 9. Využití nejrůznějších widgetů a kontejnerů 107 10. Prostředí pro zpracování vstupu 127 11. Menu 135 12. Fonty 145 13. Zabudování prohlížeče založeného na jádře WebKit 151 14. Zobrazování pop-up zpráv 157 15. Práce s vlákny 161 16. Ošetřování událostí týkajících se životního cyklu aktivity 173 17. Filtry záměrů 177 18. Spouštění aktivit a podaktivit 183 19. Obsluha rotace 191 20. Práce s prostředky 203 21. Preference 219 22. Správa lokálních databází a přístup k jejich datům 229 23. Přístup k souborům 241 24. Využití knihoven jazyka Java 249 25. Komunikace prostřednictvím Internetu 255

4 Stručný obsah 26. Používání dodavatele obsahu 261 27. Vytvoření dodavatele obsahu 267 28. Oprávnění 277 29. Vytvoření služby 281 30. Vyvolání služby 287 31. Varování uživatelů prostřednictvím upozornění 291 32. Přístup ke službám určujícím zeměpisnou polohu zařízení 297 33. Mapy, widget typu MapView a aktivita typu MapActivity 303 34. Obsluha telefonních hovorů 313 35. Vývojové nástroje 317 36. Obsluha různých velikostí obrazovky 333 37. Obsluha různých typů zařízení 353 38. Ošetření změn platformy 359 39. Kam dál? 367 Rejstřík 371

Obsah Úvodem...17 Vítejte!... 17 Poděkování... 17 O autorovi... 17 Co budete potřebovat... 18 Zdrojové kódy a jejich licence... 18 Zpětná vazba od čtenářů... 18 Dotazy... 19 Errata... 19 KAPITOLA 1 Začínáme...21 Výzvy vývoje aplikací pro chytré telefony... 22 Z čeho se aplikace pro systém Android skládají... 23 Co máte k dispozici... 24 KAPITOLA 2 Projekty a jejich cíle...25 Součásti a součástky... 26 Vytvoření projektu... 26 Struktura projektu... 27 Obsah kořenového adresáře...27 Nebojte se, není to tak hrozné...27 Pokračování...28 A co z toho...28 Obsah manifestu... 29 Nejprve kořen...29 Práva, instrumentace a aplikace...29 Vaše aplikace také něco dělá, že?...30 Dosažení minimálního výsledku...31 Verze = kontrola...32

6 Obsah Emulátory a cíle...32 Virtuální simulace...32 Výběr cíle...34 KAPITOLA 3 Vytvoření kostry aplikace...35 Začneme na začátku...36 Pitva aktivity...37 Překlad a spuštění aktivity...38 KAPITOLA 4 Používání návrhů založených na XML...41 Co to je návrh založený na XML?...42 Proč návrhy založené na XML používat?...42 Jak to tedy vypadá?...43 K čemu jsou všechny ty znaky @?...43 A jak je použijete v Javě?...44 A jak dál...44 KAPITOLA 5 Využití základních widgetů...47 Přiřazování popisků...48 Tlačítka...49 Obrázky...49 Textová pole...50 Zaškrtnutelná políčka...51 Kulaté přepínače...53 Všechny widgety jsou zároveň náhledy...54 Užitečné vlastnosti...54 Užitečné metody...54 Barvy...55 KAPITOLA 6 Práce s kontejnery...57 Myslete lineárně...58 Koncepce a vlastnosti třídy LinearLayout...58 Příklad využití třídy LinearLayout...60 Všechno je relativní...64 Koncepce a vlastnosti třídy RelativeLayout...64

Obsah 7 Příklad využití třídy RelativeLayout...66 Tabula rasa... 68 Koncepce a vlastnosti třídy TableLayout...68 Příklad využití třídy TableLayout...70 Posouvání... 70 KAPITOLA 7 Widgety nabídek...73 Přizpůsobení se okolnostem... 74 Výčty nabídek... 75 Rozbalovací menu... 77 Mřížka nabídek... 79 O 35 % méně psaní na klávesnici při práci s textovými poli... 82 Galerie... 84 KAPITOLA 8 Hrátky s výčty...87 První krok... 88 Dynamická prezentace... 89 Lepší, silnější a rychlejší... 92 Použití náhledu convertview...92 Využití návrhového vzoru Holder...93 Vytvoření výčtu...... 96...A jeho úprava...100 Adaptace jiných adaptérů...105 KAPITOLA 9 Využití nejrůznějších widgetů a kontejnerů... 107 Nastav a vyber...108 Čas plyne jako řeka...111 Informace o průběhu...112 Nastavitelný ukazatel průběhu...113 Záložky...113 Potřebné součástky...114 Specifické vlastnosti...114 Propojení součástek...115 Přidávání záložek...116 Náhledy a záměry...119 Záměna náhledů...119 Manuální záměna...120

8 Obsah Přidávání obsahu za chodu aplikace... 121 Automatická záměna... 123 Výsuvné lišty...123 Další užitečné nástroje...125 KAPITOLA 10 Prostředí pro zpracování vstupu...127 Klávesnice, skutečné a virtuální...128 Šití na míru...128 Řekněte systému, jak má pokračovat...131 Úprava velikosti...133 Vytvořte svou vlastní klávesnici...134 KAPITOLA 11 Menu...135 Menu voleb...136 Vytvoření menu voleb... 136 Přidávání voleb a vnořených menu... 136 Kontextová menu...137 Pojďte si to vyzkoušet...138 A opět plnění...141 XML struktura menu... 141 Položky menu a XML... 142 Naplnění menu... 143 KAPITOLA 12 Fonty...145 Lepší vrabec v hrsti nežli holub na střeše...146 Jiné fonty...147 Hieroglyfy...148 KAPITOLA 13 Zabudování prohlížeče založeného na jádře WebKit...151 Maličký prohlížeč...152 Načítání...153 Navigace...154 Obsluha klienta...155 Nastavení, preference a vlastnosti...156

Obsah 9 KAPITOLA 14 Zobrazování pop-up zpráv... 157 Zobrazování bublin...158 Varování...158 Vyzkoušejte si je...159 KAPITOLA 15 Práce s vlákny... 161 Obslužné objekty...162 Zprávy...162 Objekty typu Runnable...165 Použití metod náhledu...165 Kam zmizelo moje vlákno?...165 Dotek asynchronity...165 Teorie...165 AsyncTask, Generika a proměnný počet parametrů...166 Organizace třídy AsyncTask...166 Příklad úkolu...167 Na co si musíte dávat pozor...170 KAPITOLA 16 Ošetřování událostí týkajících se životního cyklu aktivity... 173 Schroedingerova aktivita...174 Život, smrt a vaše aktivita...174 oncreate() a ondestroy()...174 onstart(), onrestart() a onstop()...175 onpause() a onresume()...175 Půvab koncepce stavů...175 KAPITOLA 17 Filtry záměrů... 177 Jaký je váš záměr?...178 Součásti záměrů...178 Směrování záměrů...179 Vyjádření vašeho záměru nebo záměrů...179 Omezené přijímače...180 Pozor na pozastavené aktivity...181

10 Obsah KAPITOLA 18 Spouštění aktivit a podaktivit...183 Šlechta a poddaní...184 Spusťte je...184 Vytvořte záměr... 185 Proveďte volání... 185 Variace na téma záložek v internetovém prohlížeči...188 KAPITOLA 19 Obsluha rotace...191 Filozofie destrukce...192 Stejné, a přesto jiné...192 A nyní úsporněji!...196 Obsluha rotace po vašem...198 Lámání přes koleno...200 Změna módu zobrazení při změně polohy zařízení...202 KAPITOLA 20 Práce s prostředky...203 Soustava prostředků...204 Teorie řetězců...204 Prosté řetězce... 204 Formátování řetězců... 205 Stylovaný text... 205 Stylování formátovaných řetězců... 205 Jste v obraze?...208 XML jako prostředek...210 Různé hodnoty...212 Rozměry... 212 Barvy... 213 Pole... 213 Různé prostředky pro různé situace...214 KAPITOLA 21 Preference...219 Jak získat to, co potřebujete...220 Specifikace preferencí...220 A co na to váš aplikační rámec...221 Nechte uživatele specifikovat jejich preference...221

Obsah 11 O něco složitější struktura...224 Pop-up dialogy dle vašeho vkusu...225 KAPITOLA 22 Správa lokálních databází a přístup k jejich datům... 229 Příklad použití databáze...230 Úvod do práce s SQLite...231 První kroky...231 Vytvoření tabulky...234 Vkládání dat...234 Jak se do lesa volá, tak se z lesa ozývá...235 Surové dotazy...235 Regulární dotazy...236 Buildery...236 Používání kurzorů...237 Data, data, všude samá data...238 KAPITOLA 23 Přístup k souborům... 241 Vy a váš oř...242 Čtení a zápis...244 KAPITOLA 24 Využití knihoven jazyka Java... 249 Vnější omezení...250 Ant a JAR soubory...250 Používání skriptů...251 Když to nejde, tak to nejde......254 Možnosti používání skriptů...254 KAPITOLA 25 Komunikace prostřednictvím Internetu... 255 REST...256 Provádění HTTP operací prostřednictvím knihovny Apache HttpClient...256 Zpracování odpovědí...258 Na co byste měli myslet...259

12 Obsah KAPITOLA 26 Používání dodavatele obsahu...261 Části obsahu...262 Získání rukojeti...262 Vytváření dotazů...263 Přizpůsobení se okolnostem...264 Dávej, ber...265 Pozor na datový typ BLOB!...266 KAPITOLA 27 Vytvoření dodavatele obsahu...267 Rozbor problému...268 MIME typy...269 Vytvoření vašeho dodavatele obsahu...269 1. Vytvoření třídy dodavatele... 269 2. Dodání instance třídy Uri... 274 3. Deklarace vlastností... 274 4. Aktualizace manifestu... 275 Podpora upozornění na změny...276 KAPITOLA 28 Oprávnění...277 Můžu?...278 Stůj! Kdo tam?...279 Vyžadování oprávnění v manifestu... 279 Vyžadování oprávnění ve zdrojovém kódu... 280 Váš občanský průkaz prosím...280 KAPITOLA 29 Vytvoření služby...281 Třída služby...282 Vždy může být spuštěná pouze jedna instance služby...283 Úprava manifestu...284 Přihrávka přes plot...284 Callback metody... 285 Vysílání záměrů... 285 Vzdálená služba a zbytek zdrojového kódu...286

Obsah 13 KAPITOLA 30 Vyvolání služby... 287 Styčné plochy...288 Zachycení přihrávky...290 KAPITOLA 31 Varování uživatelů prostřednictvím upozornění... 291 Typy upozornění...292 Hardwarová upozornění...292 Ikony...293 Upozornění v akci...293 KAPITOLA 32 Přístup ke službám určujícím zeměpisnou polohu zařízení... 297 Dodavatele informací o zeměpisné poloze...298 Určení zeměpisné polohy zařízení...298 Na cestě...299 Už jsme tam?...300 Testování...301 KAPITOLA 33 Mapy, widget typu MapView a aktivita typu MapActivity... 303 Podmínky integrace služby Google Maps do vaší aplikace...304 Na čem budete stavět...304 Základní integrace...305 Kontrola nad mapou...306 Přibližování...306 Centrování...306 Náročný terén...307 Vrstva na vrstvě...307 Třídy vrstev...307 Zobrazení třídy ItemizedOverlay...308 Obsluha poklepů na mapu...309 Třída MyLocationOverlay...310 Klíč k tomu všemu...311

14 Obsah KAPITOLA 34 Obsluha telefonních hovorů...313 Správce telefonních služeb...314 Volání...314 KAPITOLA 35 Vývojové nástroje...317 Hierarchická správa...318 Dalvik Debug Monitor Service (DDMS)...324 Logging... 325 Kopírování souborů... 326 Snímky obrazovky... 327 Aktualizace zeměpisné polohy... 327 Simulace telefonních hovorů a SMS zpráv... 329 SD karta...330 Vytvoření snímku karty... 331 Vložení karty... 331 KAPITOLA 36 Obsluha různých velikostí obrazovky...333 Základní informace...334 Vše v jednom...334 Spíše než na umístění myslete na pravidla... 335 Berte v potaz fyzické rozměry... 335 Vyhýbejte se reálným pixelům... 336 Používejte škálovatelné obrázky... 336 Šití na míru...336 Přidávání elementů <supports-screens>... 336 Prostředky a sady prostředků... 337 Určení velikosti... 338 Testujte na skutečných zařízeních...339 Rozdíly v hustotě bodů... 339 Nastavení hustoty... 339 Přístup ke skutečným zařízením... 340 Využití většího displeje...340 Nahraďte menu tlačítky... 341 Nahraďte záložky jednoduchými aktivitami... 341 Sjednoťte aktivity do jedné... 341 Příklad: aplikace EU4You...342 První řez... 342 Úprava fontů... 347 Úprava Ikon... 348

Obsah 15 Využití volného prostoru na obrazovce...348 Co když se jedná o něco jiného než o prohlížeč?...351 Chyby systému verze Android 2.0 v zařízení Motorola DROID...351 KAPITOLA 37 Obsluha různých typů zařízení... 353 Tato aplikace obsahuje explicitní instrukce...354 Standardní klávesy...355 Zaručený trh...355 A jak je to doopravdy...355 Archos 5 Android Internet Tablet...356 Motorola CLIQ/DEXT...356 Motorola DROID/Milestone...357 Google/HTC Nexus One...357 Motorola BACKFLIP...357 KAPITOLA 38 Ošetření změn platformy... 359 Budování značky...360 Další věci, na kterých byste mohli pohořet...360 Hierarchie náhledů...360 Změna prostředků...362 Ošetření změn API...362 Detekce verze...362 Obalení API...362 KAPITOLA 39 Kam dál?... 367 Otázky, a někdy i odpovědi...368 Zdrojový kód systému...368 Nejžhavější novinky...369 Rejstřík... 371

Úvodem Vítejte! Jsme rádi, že máte zájem o vývoj aplikací pro systém Android. V budoucnosti budou lidé přistupovat ke službám založeným na připojení k Internetu prostřednictvím netradičních prostředků, jako jsou mobilní zařízení, stále častěji. Čím více toho v této oblasti podnikneme, tím více lidí, kteří svým příspěvkem usnadní vývoj výkonných mobilních aplikací budoucnosti, k ní přitáhneme. Systém Android je nový fenomén zařízení využívající tuto platformu se poprvé objevila na scéně koncem roku 2008 ale je pravděpodobné, že v budoucnosti bude díky velikosti a poli působnosti aliance Open Handset Alliance rychle nabývat na významu. V neposlední řadě nás pak velmi těší, že jste si vybrali právě tuto knihu. Upřímně doufáme, že ji shledáte užitečnou a alespoň občas také zábavnou. Poděkování Rád bych poděkoval vývojovému týmu systému Android nejenom za to, že vytvořil dobrý produkt, ale také za jeho nedocenitelnou aktivitu v archivu Android Google Groups. Konkrétně bych chtěl poděkovat Romainu Guyovi, Justinu Mattsonovi, Dianne Hackbornové, Jean-Baptistu Queruovi, Jeffu Sharkeyovi a Xavieru Ducrohetovi. Ikony používané ve zdrojových kódech příkladů pocházejí ze sady ikon Nuvola: www.icon-king.com/? p=15. O autorovi Mark Murphy je zakladatel společnosti CommonsWare a autor knihy Busy Coder s Guide to Android Development. Podniká ve třech různých oblastech a má rozsáhlé zkušenosti počínaje vývojem open-source a společných projektů pro společnosti, které najdete na seznamu Fortune 500, počínaje a konče vývojem aplikací pro cokoliv menšího než mainframe počítače. Živí se jako vývojář softwaru již více než 25 let a vyvíjel software pro nerůznější zařízení, od stolního počítače TRS-80 až po nejnovější mobilní zařízení. Jako vytříbený řečník přispívá svými prezentacemi na konferencích a pořádá výukové kurzy v mnoha oblastech na celém světě. Píše také sloupek Building Droids na webu AndroidGuys a sloupek Andorid Angle na webu NetworkWorld. Kromě své práce ve společnosti CommonsWare se aktivně zajímá o roli Internetu ve vztahu veřejnosti k politice a vládě. Současně je spoluautorem souboru esejů Rebooting America.

18 Úvodem Co budete potřebovat Chcete-li psát aplikace pro Android, musíte ovládat alespoň základy programování v jazyce Java. Při psaní programů pro Android se používá syntaxe tohoto jazyka a knihovna tříd, která připomíná podmnožinu knihovny Java SE (a navíc obsahuje také rozšíření specifická pro systém Android). Pokud jste v jazyce Java ještě nikdy neprogramovali, měli byste se to pravděpodobně předtím, než se dáte do vývoje aplikací pro Android, alespoň trochu naučit. V knize nenajdete popis stáhnutí a instalace vývojových nástrojů systému Android. Nenajdete zde ani popis prostředí Eclipse s příslušným přídavným modulem a ani žádného jiného samostatného nástroje. Tyto informace jsou velmi přehledně podány na webových stránkách systému. Materiály uvedené v této knize by pak měly být relevantní, ať už vývojové prostředí používáte, či nikoliv. Předtím než se začnete experimentovat s nějakým z příkladů uvedených v této knize, měli byste si z webových stránek systému vývojové nástroje stáhnout, nainstalovat je a otestovat. Některé kapitoly mohou odkazovat na materiál uvedený v kapitolách předchozích. V knize také nenajdete kompletní zdrojový kód každého uvedeného příkladu, protože kdybychom kompletní výpisy všech zdrojových uvedli, by kniha byla příliš objemná. Chcete-li uvedené příklady zkompilovat, stáhněte si jejich zdrojové kódy z webu nakladatelství Computer Press (www.cpress.cz). Zdrojové kódy a jejich licence Zdrojové kódy příkladů uvedených v této knize si mohou čtenáři stáhnout na stránkách nakladatelství Computer Press (http://knihy.cpress.cz/k1846). Na všechny uvedené projekty aplikací pro Android se vztahují podmínky licence Apache 2.0, jejíž specifikaci najdete na stránkách www. apache.org/licenses/ LICENSE-2.0.html pro případ, že byste je chtěli použít. Zpětná vazba od čtenářů Nakladatelství a vydavatelství Computer Press, které pro vás tuto knihu přeložilo, stojí o zpětnou vazbu a bude na vaše podněty a dotazy reagovat. Můžete se obrátit na následující adresy: redakce PC literatury Computer Press Spielberk Office Centre Holandská 3 639 00 Brno nebo sefredaktor.pc@cpress.cz

Úvodem 19 Dotazy Máte-li s knihou jakýkoli problém, kontaktujte nás pomocí formuláře na adrese http://knihy. cpress.cz/k1846, kde klepněte na odkaz Poslat komentář. Pokusíme se udělat vše, abychom vám ho pomohli vyřešit. Computer Press neposkytuje rady ani jakýkoli servis pro aplikace třetích stran. Pokud budete mít dotaz k programu, obraťte se prosím na jeho tvůrce. Errata Přestože jsme udělali maximum pro to, abychom zajistili přesnost a správnost obsahu, chybám se úplně vyhnout nedá. Pokud v některé z našich knih najdete chybu, ať už chybu v textu nebo v kódu, budeme rádi, pokud nám ji nahlásíte. Ostatní uživatele tak můžete ušetřit frustrace a pomoci nám zlepšit následující vydání této knihy. Veškerá existující errata zobrazíte na adrese http://knihy.cpress.cz/k1846 po klepnutí na odkaz Errata.