načítání...
nákupní košík
Košík

je prázdný
a
b

E-kniha: App Inventor - David Wolber; Hal Abelson; Ellen Spertus; Liz Looney

App Inventor
-20%
sleva

Elektronická kniha: App Inventor
Autor: ; ; ;

Android je v současnosti nerozšířenější mobilní platformou na světě. Ne každý je však zkušeným programátorem, aby si mohl vlastní aplikaci podle svých potřeb naprogramovat. ... (celý popis)


hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%   celkové hodnocení
0 hodnocení + 0 recenzí

Specifikace
Nakladatelství: Computer press
Dostupné formáty
ke stažení:
PDF
Upozornění: většina e-knih je zabezpečena proti tisku
Médium: e-book
Počet stran: 368
Rozměr: 23 cm
Úprava: ilustrace
Vydání: 1. vyd.
Spolupracovali: překlad Jiří Huf
Jazyk: česky
Téma: počítače, programy, programování, aplikace, operační systémy, Android, mobilní, telefony
ADOBE DRM: bez
ISBN: 9788025142509
Ukázka: » zobrazit ukázku
Popis

Android je v současnosti nerozšířenější mobilní platformou na světě. Ne každý je však zkušeným programátorem, aby si mohl vlastní aplikaci podle svých potřeb naprogramovat. Naučte se vytvářet aplikace pro Android v App Inventoru jednoduchým skládáním programových bloků a vytvořte si vlastní aplikaci bez programování. Ve čtyřiadvaceti kapitolách vás tým zkušených autorů seznámí s prostředím App Inventoru, ve kterém poté budete moct sami vyvíjet aplikace. Jednotlivé možnosti prostředí si vyzkoušíte na dvanácti funkčních projektech, jež posléze můžete samostatně dál rozvíjet. Tvorba aplikací v App Inventoru nevyžaduje žádné znalosti programování. Publikace vás mimo jiné naučí: - Navrhnout logiku různých typů aplikací - Pracovat s databázemi - Opakovaně používat jednotlivé bloky aplikace - Využívat senzory - Sestavit a odladit vytvořenou aplikaci Čtenáři si mohou na adrese http://knihy.cpress.cz/K2131 pod odkazem Soubory ke stažení stáhnout soubory se zdrojovými kódy použitými v knize. O autorech: David Wolber je profesorem na univerzitě v San Francisku, s App Inventorem pracuje od jeho představení. Hal Abelson je profesorem na MIT, zajímá se o zapojení výpočetní techniky do výuky. Patří mezi zakladatele Creative Commons. Ellen Spertus pracuje v Googlu a podílela se na vývoji App Inventoru. Publikovala o něm řadu článků v odborných médiích. Liz Looney je vývojářkou v Googlu, spolupracovala na vývoji App Inventoru. Má dvacetileté zkušenosti v oblasti programování. (vytvořte si vlastní aplikaci pro Android : bez znalosti programování)

Související tituly dle názvu:
App Inventor App Inventor
Wolber David, Abelson Hal, Spertus Ellen, Looney Liz
Cena: 254 Kč
Recenze a komentáře k titulu
Zatím žádné recenze.


Ukázka / obsah
Přepis ukázky

David Wolber, Hal Abelson, Ellen Spertus, Liz Looney

App Inventor

Computer Press

Brno

2014


App Inventor

David Wolber, Hal Abelson, Ellen Spertus, Liz Looney

Překlad: Jiří Huf

Odpovědný redaktor: Martin Herodek

Technický redaktor: Jiří Matoušek

© 2014, Albatros Media a. s.

Authorized Czech translation of the English edition of App Inventor, 1st Edition

(ISBN 9781449397487) © 2011 David Wolber, Hal Abelson, Ellen Spertus, and Liz Looney

This translation is published and sold by permission of O’Reilly Media, Inc., which owns or

controls all rights to publish and sell the same.

Translation © Jiří Huf, 2014

Objednávky knih:

http://knihy.cpress.cz

www.albatrosmedia.cz

eshop@albatrosmedia.cz

bezplatná linka 800 555 513

ISBN 978-80-251-4195-3

Vydalo nakladatelství Computer Press v Brně roku 2014 ve společnosti Albatros Media a. s.

se sídlem Na Pankráci 30, Praha 4. Číslo publikace 18 469.

© 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.

1. vydání


3

Obsah

Předmluva 15

Poděkování 17

Úvodem 19

Blokový jazyk pro mobilní telefony 19

Co můžete v prostředí App Inventor dělat? 20

Hrát si 20

Tvořit prototypy 20

Vytvářet aplikace na míru 20

Vyvíjet plnohodnotné aplikace 21

Učit se a učit ostatní 21 Proč se v prostředí App Inventor dobře pracuje 21

Nemusíte si pamatovat a zadávat příkazy 21

Volíte si z nabízených voleb 21

Ne všechny bloky do sebe zapadají 21

S událostmi pracujete přímo 22 Jaké můžete vytvářet aplikace? 22

Hry 22

Vzdělávací software 22

Aplikace sledující, kde se nacházíte 22

Aplikace využívající pokročilé technologie 23

SMS aplikace 23

Aplikace pro řízení robotů 23

Složité aplikace 23

Aplikace s přístupem k webu 23 Kdo může vytvářet aplikace? 23 Styly používané v této knize 24 Jak s touto knihou pracovat 25 Zpětná vazba od čtenářů 26 Zdrojové kódy ke knize 26 Errata 26

KAPITOLA 1

Ahoj, kocoure 27

Co se naučíte 28

Prostředí App Inventor 28

Design komponent 29


4

Obsah

Nápis 31

Přidání tlačítka 32

Přidání mňoukání 34 Defi nování chování komponent 34

Mňoukající kocour 34

Přidání předení 36

Zatřesení telefonem 39 Sbalení aplikace ke stažení 39 Sdílení aplikace 40 Variace 41 Shrnutí 41

ČÁST I

12 APLIKACÍ NA MÍRU

KAPITOLA 2

Kreslení 45

Co se naučíte 46

Začínáme 46

Design komponent 46

Tlačítka barev 47

Uskupení komponent 47

Přidání kreslicího plátna 48

Uspořádání spodních tlačítek a přidání snímku 49 Defi nování chování komponent 50

Přidání události pro vykreslení tečky při dotyku 51

Přidání události pro vykreslování křivek 53

Přidání obslužných rutin událostí tlačítkům 55

Uživatel si může pořídit snímek 56

Změna velikosti tečky 57 Hotová aplikace: Kreslení 60 Variace 60 Shrnutí 60

KAPITOLA 3

Krtek 63

Co budeme vytvářet 63

Co se naučíte 64

Začínáme 64

Design komponent 65


Obsah

5

Řízení chování komponent 68

Pohyb krtka 68

Tvorba procedury PresunKrtka 68

Počítání skóre 71

Vynulování skóre 73

Akce při zásahu krtka 74 Hotová aplikace: Krtek 74 Variace 74 Shrnutí 75

KAPITOLA 4

Auto SMS 77

Co se naučíte 78

Začínáme 79

Design komponent 79

Řízení chování komponent 80

Zadání vlastní odpovědi 82

Uložení vlastní odpovědi do databáze 83

Načtení vlastní odpovědi při spuštění aplikace 84

Přečtení příchozí zprávy nahlas 86

Rozšíření odpovědi o údaje o aktuálním místě 88

Zaslání údajů o umístění v odpovědi 89 Hotová aplikace: Auto SMS 90 Variace 90 Shrnutí 91

KAPITOLA 5

Beruška 93

Co budeme tvořit 93

Co se naučíte 94

Design komponent 94

Začínáme 95

Rozpohybování berušky 95

Přidání komponent 95

Defi nice chování 96 Zobrazení úrovně nasycení 98

Přidání komponenty 98

Tvorba proměnné: Sytost 98

Vykreslení linky sytosti 99

Vyhladovění 100


6

Obsah

Přidání mšice 101

Přidání komponenty ImageSprite 101

Ovládání mšice 102

Beruška si pochutná na mšici 102

Detekce srážky berušky s mšicí 103

Návrat mšice 104 Přidání tlačítka opětovného spuštění 105 Přidání žáby 106

Žába honí berušku 106

Žába požírá berušku 107

Návrat berušky 107 Přidání zvukových efektů 108 Variace 109 Shrnutí 109

KAPITOLA 6

Průvodce Paříží 111

Co se naučíte 111

Design komponent 111

Nastavení vlastností komponenty ActivityStarter 112

Nastavení chování komponent 113

Sestavení seznamu lokací 113

Uživatel si volí lokaci 114

Otevření map s vyhledáváním 115 Nastavení virtuální prohlídky 116

Vyhledávání adres konkrétních map 116

Defi nování seznamu dataURIs 117

Úprava chování události ListPicker.AfterPicking 117 Variace 119 Shrnutí 119

KAPITOLA 7

Androide, kde mám auto? 121

Co se naučíte 121

Začínáme 121

Design komponent 122

Nastavení chování komponent 124

Zobrazení aktuálního umístění 124

Uložení aktuální pozice 126

Zobrazení cesty do uloženého umístění 127


Obsah

7

Trvalé uchování uloženého místa 129

Načtení uloženého místa při spuštění aplikace 130 Kompletní aplikace: Androide, kde mám auto? 132 Variace 132 Shrnutí 132

KAPITOLA 8

Prezidentský kvíz 135

Co se naučíte 135

Začínáme 136

Design komponent 136

Defi nice chování komponent 138

Defi nování proměnné index 139

Zobrazení první otázky 139

Procházení otázek 140 Jednodušší přizpůsobování kvízu 143

Jak bloky fungují 145 Přepínání obrázku při jednotlivých otázkách 145

Jak bloky fungují 146 Kontrola odpovědí 147

Jak bloky fungují 148

Jak bloky fungují 149 Hotová aplikace Prezidentský kvíz 150 Variace 150 Shrnutí 152

KAPITOLA 9

Xylofon 153

Co vytvoříme 153

Co se naučíte 154

Začínáme 154

Design komponent 154

Sestavení kláves 155

Tvorba tlačítek prvních tónů 155

Přidání komponenty Sound 155

Napojení zvuků na tlačítka 156

Android a načítání zvuků 158

Zapracování zbývajících tónů 158 Zaznamenání a přehrání tónů 159

Přidání komponent 160


8

Obsah

Záznam tónů 161

Přehrání tónů 163

Přehrání tónů se správným zpožděním 164 Variace 166 Shrnutí 166

KAPITOLA 10

Tvorba a vyplňování kvízů 169

Co se naučíte 170

Začínáme 171

Design Komponent 171

Nastavení chování komponent 172

Záznam uživatelských zadání 173

Vymazání otázky a odpovědi 174

Zobrazení otázek a odpovědí na více řádcích 175

Uložení otázek a odpovědí do databáze 178

Načtení dat z databáze 180 Hotová aplikace Vytvoř kvíz 183 Vyzkoušej se: aplikace umožňující vyzkoušet si kvíz uložený v databázi 184 Vyzkoušej se: úprava bloků načítajících kvíz z databáze 184

Jak bloky fungují 185 Hotová aplikace Vyzkoušej se 186 Variace 186 Shrnutí 186

KAPITOLA 11

Centrála 189

Co se naučíte 190

Začínáme 190

Design komponent 190

Defi nice chování komponent 191

Jak bloky fungují 193

Přidání člena do skupiny 193

Odesílání zpráv 195

Vzhlednější zobrazení seznamu 196

Protokolování odesílaných zpráv 198

Uložení seznamu do databáze 200

Načtení seznamu z databáze 200 Hotová aplikace Centrála 202 Variace 202 Shrnutí 203


Obsah

9

KAPITOLA 12

Dálkový ovladač robota 205

Co se naučíte 205

Začínáme 206

Design komponent 206

Neviditelné komponenty 207

Viditelné komponenty 207 Chování komponent 210

Spojení s robotem 210

Zobrazení seznamu robotů 210

Navázání spojení 211

Řízení robota 213

Detekce překážek ultrazvukovým senzorem 216 Variace 217 Shrnutí 217

KAPITOLA 13

Amazon v knihkupectví 219

Co se naučíte 219

Co je API? 220

Design komponent 222

Nastavení chování 224

Vyhledávání podle hesla 224

Vyhledávání podle kódu ISBN 225

Nenechte uživatele čekat 226

Načtení knihy 227

Vylepšení zobrazení 228 Přizpůsobení rozhraní API 228 Variace 230 Shrnutí 230

ČÁST II

MANUÁL INVENTORU

KAPITOLA 14

Architektura aplikace 233

Komponenty 234

Chování 234

Aplikace jako recept 235

Aplikace jako sada obslužných rutin událostí 235


10

Obsah

Typy událostí 237

Obslužné rutiny událostí mohou klást otázky 239

Obslužné rutiny událostí mohou opakovat bloky 240

Obslužné rutiny událostí si pamatují 240

Obslužné rutiny událostí umí komunikovat s webem 241 Shrnutí 241

KAPITOLA 15

Sestrojení a ladění aplikace 243

Principy softwarového inženýrství 243

Pište aplikace pro skutečné lidi s reálnými problémy 244

Předvedení prototypu budoucím uživatelům 244

Postupný vývoj 244

Promyslete si aplikaci předem 245

Komentujte kód 245

Rozděl, rozlož a panuj 246

Porozumění jazyku: kreslení na papír 247

Ladění aplikace 250

Sledování proměnných 250

Testování jednotlivých bloků 252

Inkrementální vývoj s nástrojem Do It 253

Aktivace a deaktivace bloků 253 Shrnutí 254

KAPITOLA 16

Programování paměti aplikace 255

Pojmenované paměťové buňky 255

Vlastnosti 255

Defi nování proměnných 256

Nastavení a načtení proměnné 258

Vložení výrazu do proměnné 258

Zvýšení hodnoty proměnné 259

Sestavování složitých vzorců 259

Zobrazení proměnných 260 Shrnutí 261

KAPITOLA 17

Tvorba animovaných aplikací 263

Vložení komponenty Canvas do aplikace 263

Souřadnicový systém komponenty Canvas 264


Obsah

11

Animace objektů pomocí časových událostí 265

Defi nujeme pohyb 266

Rychlost 266 Vysokoúrovňové funkce animací 267

Dosažení okraje obrazovky 267

Události CollidingWith a NoLongerCollidingWith 268 Interaktivní animace 269 Defi nování animace bez časovače 270 Shrnutí 272

KAPITOLA 18

Aplikace se rozhoduje: podmínkové bloky 273

Ověřování splnění podmínek pomocí bloků if a ifelse 274

Naprogramování rozhodnutí buď/nebo 275

Programování podmínek uvnitř podmínek 276

Programování komplexních podmínek 277

Shrnutí 280

KAPITOLA 19

Programování seznamů 281

Vytvoření proměnné typu list 282

Výběr položky na seznamu 283

Index a procházení seznamu 283

Příklad: Procházení seznamu barev 284 Vstupní formuláře a dynamické seznamy 287

Defi nování dynamického seznamu 287

Přidání položky 287

Zobrazení seznamu 288

Odstranění položky ze seznamu 289 Seznam tvořený seznamy 291 Shrnutí 293

KAPITOLA 20

Opakovací bloky: iterace 295

Řízení provádění aplikace – větvení a smyčky 295

Opakování funkcí na seznamu pomocí bloku foreach 296

Smyčky zblízka 298

Píšeme udržovatelný kód 298 Druhý příklad s blokem foreach – zobrazení seznamu 299


12

Obsah

Opakování pomocí bloku while 301

Synchronní zpracování dvou seznamů blokem while 301

Počítání vzorců pomocí bloku while 301 Shrnutí 304

KAPITOLA 21

Defi nování procedur: opětovné využití bloků 305

Vyhýbání se redundanci 307

Defi nování procedury 309

Volání procedury 309

Čítač programu 310

Přidání parametrů do procedury 310

Procedura vracející hodnotu 314

Bloky využívané ve více aplikacích 315

Druhý příklad: vzdalenostMeziBody 316

Shrnutí 318

KAPITOLA 22

Pracujeme s databázemi 319

Trvalé ukládání dat do databáze TinyDB 320

Načtení dat z databáze TinyDB 321

Uložení a sdílení dat v databázi TinyWebDB 322

Ukládání dat do databáze TinyWebDB 323

Vyžádání dat z databáze TinyWebDB a jejich zpracování 324

GetValue a GotValue v akci 325

Složitější příklad událostí GetValue a GotValue 326

Vyžádání dat s různými příznaky 328

Zpracování více příznaků v události TinyWebDB.GotValue 329 Nastavení webové databáze 329 Shrnutí 331

KAPITOLA 23

Senzory 333

Tvorba aplikací zjišťujících polohu 333

GPS 334

Odečet pozice v App Inventoru 336

Hlídání hranic 337

Poskytovatelé údajů o pozici: GPS, WiFi a Cell ID 337 Senzor orientace 338

Parametr Roll 339


Obsah

13

Posun libovolným směrem pomocí vlastností Angle a Magnitude 340

Telefon jako kompas 340 Akcelerometr 342

Reakce na zatřesení telefonem 342

Nasazení komponenty AccelerometerSensor 342

Detekce volného pádu 343

Detekce zrychlení pomocí nastavených hodnot 343 Shrnutí 345

KAPITOLA 24

Komunikace s webovými rozhraními API 347

Komunikace s API generátory obrázků 349

Nastavení grafu ve vlastnosti Image.Picture 351

Dynamické sestavování URL adresy pro tvorbu grafu 352 Komunikace s datovými rozhraními API 355

Webové rozhraní API 356

Přístup k rozhraní API prostřednictvím komponenty TinyWebDB 356 Tvorba vlastního rozhraní API komunikujícího s App Inventorem 358

Přizpůsobení kódu šablony 359

Zapouzdření rozhraní Yahoo! Finance API 360 Shrnutí 361

Rejstřík 363



15

Předmluva

Konzumní společnost nám poskytuje bezpočet příležitostí bavit se a občas se i něco naučit.

Ve velké většině případů se však jedná o pasivní aktivity. Ale to nevadí. Všichni si rádi občas

oddechneme a pobavíme se. To nám však nestačí. Kromě spotřeby nás těší ještě něco – tvořit.

Mám na mysli potěšení a pocit hrdosti, když nakreslíme obrázek, postavíme model letadla či

něco upečeme.

Současné vyspělé technologie (mobilní telefony, tablety, televize apod.), jejichžprostřednic

tvím dnes hltáme zábavu a  informace, jsou pro nás často velkou neznámou. Netušíme, jak

fungují, a i když nám některé z nich umožní nakreslit obrázek, natočit video apod., nejsou to

ze své podstaty tvůrčí média. Jinými slovy, většina lidí aplikace, které na takových zařízeních

spouští, neumí napsat.

Co kdybychom tohle dokázali změnit? Co kdybychom dokázali z každodenně používaných

nástrojů, jakými jsou mobilní telefony, vytáhnout tvůrčí potenciál? Co kdyby bylo napsatapli

kaci pro mobilní telefon stejně snadné jako nakreslit obrázek či upéct chleba? Co kdybychom

dokázali přemostit propast mezi spotřebními produkty a tvůrčími médii?

Zaprvé bychom tak z těchto nástrojů sňali závoj tajemna. Již by pro nás nebylyneuchopitel

né, ale dokázali bychom s nimi pracovat. Dokázali bychom jim porozumět. Kdybychom pro

ně uměli vytvářet aplikace, vybudovali bychom si k nim méně pasivní, zato však tvůrčí vztah,

a mohli bychom si s nimi pohrávat mnohem rafi novaněji a účelněji.

Když jsme se s Halem Abelsonem o nápadu na prostředí App Inventor bavili poprvé, kladli

jsme důraz na jedinečnou motivační sílu, kterou by mohly mobilní telefony vzdělávat. Haluva

žoval, zda bude možné pomocí této síly uvést studenty do problematiky počítačové vědy. Ve

třídě Davea Wolbera jsme si pak uvědomili, že jsme dali vzniknout ještě něčemu většímu: App

Inventor začal studenty konzumenty přetvářet na tvůrce. Studenty tvorba aplikací pro vlastní

mobilní telefony bavila! Když pak jeden z Daveových studentů napsal jednoduchou, avšak velmi

užitečnou aplikaci, díky které řidiči za jízdy nemusí psát textové zprávy, začali jsme uvažovat

nad tím, co by se stalo, kdyby mobilní aplikace dokázali psát nejen profesionální programátoři.

Hodně jsme se proto snažili, aby bylo ovládání App Inventoru jednodušší a zábavnější.Rov

něž jsme ho vybavili více funkcemi. A v práci neustáváme – App Inventor je stále v beta verzi

a máme s ním velké plány.

Autoři této knihy jsou prvotřídními pedagogy a programátory. Rád bych jim zde osobněpo

děkoval za práci, kterou věnovali psaní, testování a dokumentaci prostředí App Inventor for

Android, a samozřejmě také za to, že napsali tuto výtečnou knihu.

Nenechte se pobízet, nechte průchod tvůrčímu zápalu a napište si vlastní aplikaci.

– Mark Friedman

Vedoucí projektu App Inventor for Android, Google



17

Poděkování

Z hlediska výuky, což je hlavní motivátor App Inventoru, můžeme říci, že se prostřednictvím

počítačů učíme poznávat velké myšlenky. App Inventor je v oblasti počítačů a vzdělávánísou

částí otevřeného hnutí, které se započalo prací Saymoura Paperta a skupiny MIT Logo Group

v šedesátých letech dvacátého století a jehož vliv i dnes nalezneme v mnohých akcícha pro

gramech cílených na rozvoj počítačového myšlení.

Design App Inventoru staví na výsledcích výzkumů v oblasti výuky výpočetních systémů a na

práci společnosti Google v oblasti online vývojových prostředí. Vizuální programovací rozhraní

je úzce spjato s programovacím jazykem Scratch (MIT). Jeho konkrétní implementace je zde

založena na technologii Open Blocks, šířené v rámci vzdělávacího programuMassachusett

ského technologického institutu (MIT), Scheller Teacher Education Program, a vycházíz ab

solventské práce studenta MIT Ricarosa Roquea. Rádi bychom poděkovali Ericu Klopferovi

a Danielu Wendelovi ze Schellerova programu za to, že nám technologii Open Blockszpří

stupnili, ale také za pomoc při práci s ní. Kompilátor překládající jazyk vizuálních bloků na

Android využívá rozhraní Kawa Language Framework a Kawa verzi programovacího jazyka

Scheme, které vytvořil Per Bothner a které je šířeno organizací Free Soft ware Foundation pod

licencí GNU Operating System.

Autoři by rádi poděkovali týmům Googlu a App Inventoru za podporu při práci a za pomoc

při výuce na Sanfranciské univerzitě, Mills College i MIT. Zvláštní poděkování patřítechnic

kému vedoucímu App Inventoru Marku Friedmanovi, vedoucí projektu Karen Parkerové, ale

také Sharon Perlové a Debby Wallachové.

Zvláštní poděkování přináleží i redaktorům v nakladatelství O‘Reilly Courtney Nashovéa Bri

anovi Jepsonovi. Za zpětnou vazbu a novou perspektivu děkujeme rovněž Kathy Riutzelové,

Brianovi Kernighanovi, Debby Wallachové a Rafi kiovi Caiovi.

Konečně bychom rádi poděkovali i svým manželkám a manželům: Elleninu manželoviKei

thovi Goldenovi, Halově manželce Lynn Abelsonové, Lizině manželovi Kevinovi Looneyovi

a Davidově manželce Minervě Novoaové. Čerstvá maminka Ellen je taktéž vděčna za pomoc

pečovateli Neilovi Fullagarovi.



19

Úvodem

Právě běžíte svou obvyklou trasu, a v tom dostanete nápad na úžasnou novou aplikaci. Po zbytek

cesty pak už neuvažujete, jaký budete mít čas, protože máte myšlenky jen pro novou aplikaci.

Ale jak ji napsat? Nejste programátor a navíc by vám to trvalo roky, stálo spoustu času, peněz...

A navíc takovou aplikaci už nejspíše někdo napsal. A najednou nevíte, co s nápadem dělat dál.

Nyní si představte trochu jiný svět, ve kterém k psaní aplikací nepotřebujete mít roky zkušeností

s programováním. Svět, ve kterém mohou aplikace psát umělci, vědci, humanisté, zdravotníci,

právníci, hasiči, maratonci, fotbaloví trenéři a lidé ze všech oblastí lidských činností. Představte

si svět, ve kterém můžete myšlenku uvést v prototyp, aniž byste museli najímatprogramáto

ry. Kde můžete vytvářet aplikace přímo sobě na míru, kde si výpočetní výkon svého telefonu

můžete přizpůsobit vlastním potřebám.

Tak vypadá svět App Inventoru, nového nástroje Googlu určeného pro programování mobilních

aplikací. Prostředí používá vizuální „blokové“ programování, se kterým mohou slavit úspěch

i děti. App Inventor boří bariéry, které při programování mobilních aplikací pro systém Android

vyvstávají. Co si takhle napsat hru, ve které budete jako postavy vy a vaši přátelé? Anebo co si

napsat aplikaci, která vám ve tři hodiny odpoledne připomene, že máte koupit mléko, pokud

se zrovna nacházíte v blízkosti nějakého obchodu s potravinami? Nebo aplikace s kvízem pro

vaši drahou polovičku, která bude ve skutečnosti žádostí o sňatek? „Otázka 4: Vezmeš si mě?

Stisknutím tlačítka nabídku přijmeš a odešleš SMS.“ Takovou aplikaci už skutečně jeden muž

napsal – a přítelkyně si ho vzala!

Blokový jazyk pro mobilní telefony

App Inventor je vizuálně zpracovaný přesunovací nástroj, který slouží k  tvorbě mobilních

aplikací na platformě Android. Pomocí GUI nástroje sestavíte uživatelské rozhraní (jak bude

aplikace vypadat) a následně pomocí „bloků“, které složíte dohromady jako skládačku, defi -

nujete, jak se bude aplikace chovat.

Na obrázku 0.1 vidíte několik bloků v úvodní fázi stavby aplikace, kterou vytvořil DanielFinne

gan, vysokoškolský student, který nikdy dříve neprogramoval. Dokážete říci, co aplikace dělá?

Aplikace slouží jako záznamník. Spustíte ji, když máte řídit, a ona automaticky odpovídá na

přijaté textové zprávy.

Blokům porozumíte lépe než tradičnímu programovacímu jazyku, nebudete se muset nic učit

a budete si jen klást otázky typu: Mohu si nechat přečíst přijaté zprávy nahlas? Mohu nějak

přizpůsobit odpověď? Mohu napsat aplikaci, která umožní lidem pomocí textových zpráv

hlasovat, například kdo se stane příští českou superstar? Odpověď na všechny tyto otázky je

„ano“. V této knize vám ukážeme, jak na to.


20

Úvodem

Obrázek 0.1 Bloky určují v App Inventoru funkcionalitu aplikace

Co můžete v prostředí App Inventor dělat?

Hrát si

Psát si vlastní aplikace je zábava a App Inventor se vás bude snažit vybízet ke zkoumání. Stačí

prostředí otevřít ve webovém prohlížeči, připojit telefon a začít skládat bloky, které vidíte na

obrázku 0.1. Vytvářenou aplikaci pak uvidíte přímo v telefonu. Takže zatímcoprogramuje

te, můžete kamaráda e-mailem poprosit, aby vám poslal SMS a aplikaci tak vyzkoušel. Nebo

můžete pomocí nové aplikace ovládat robota LEGO NXT či můžete telefon odpojit, vyjít ven

a zkontrolovat, zda aplikace správně určuje, kde se telefon nachází.

Tvořit prototypy

Máte nápad na novou aplikaci? Nemusíte si ho psát na kapesník ani čekat, než se zcela rozplyne.

Můžete si vytvořit její prototyp. Prototyp je nehotovým a jen částečně funkčním modelem.Vy

jádřit myšlenku slovy je jako napsat kamarádovi či milované osobě báseň. Prototyp vytvořený

v prostředí App Inventor můžete chápat jako báseň, kterou píšete investorovi. Svým způsobem

vám App Inventor může v případě mobilních aplikací posloužit jako elektronický kapesník.

Vytvářet aplikace na míru

V současném světě mobilních aplikací máme na výběr jen z již existujících aplikací. Kdo z nás

si někdy nestěžoval na aplikaci, kterou by měl rád přizpůsobenu vlastnímu způsobu práce?

V prostředí App Inventor můžete vytvářet přesně takové aplikace, jaké chcete. Ve třetíkapito

le si vytvoříte hru, ve které budete sbírat body, když prstem trefíte náhodně se pohybujícího

krtka. Nemusíte však použít obrázek krtka z návodu. Namísto něj můžete vložit obrázeksvé

ho sourozence – tedy udělat něco, co má význam pouze pro vás, nikoliv pro ostatní. V osmé

kapitole budeme vytvářet kvízovou aplikaci, která se táže na americké prezidenty, ale vy si ji

můžete snadno přizpůsobit vlastním otázkám, ať už na téma oblíbené hudby či rodinné historie.


Proč se v prostředí App Inventor dobře pracuje

21

Vyvíjet plnohodnotné aplikace

App Inventor není jen prostředím pro tvorbu prototypů či designérem rozhraní. Můžete v něm

vytvářet plnohodnotné aplikace pro širokou uživatelskou základnu. Jazyk prostředí vámna

bídne všechny základní programátorské stavební prvky, jakými jsou smyčky a  podmínky,

avšak v podobě bloků.

Učit se a učit ostatní

Ať už jste na základní, střední nebo vysoké škole, App Inventor je skvělým výukovýmprostře

dím. Výborně se hodí pro výuku IT, ale rovněž je úžasným nástrojem pro výuku matematiky,

fyziky, podnikání a vlastně jakéhokoliv předmětu. Klíčem je, že se učíte tvůrčím způsobem.

Namísto toho, abyste si museli pamatovat nazpaměť vzorečky, si například vytvoříte aplikaci,

která vyhledá nejbližší nemocnici (nebo nákupní centrum). Namísto abyste museli psátpí

semnou práci na téma dějiny černochů, vytvoříte si multimediální kvízovou aplikacis videou

kázkami a proslovy Martina Luthera Kinga a Malcolma X. Jsme přesvědčeni, že App Inventor

může, spolu s touto knihou, posloužit po celou dobu studia jako vynikající výukový nástroj.

Proč se v prostředí App Inventor dobře pracuje

Většina lidí říká, že se App Inventor snadno používá díky svému přesunovacímu rozhraní. Co

to ale znamená? Proč se App Inventor snadno používá?

Nemusíte si pamatovat a zadávat příkazy

Jednou z věcí, která začínajícím programátorům činí největší potíže, je zadávat příkazy a čekat,

až počítač vyplivne nesrozumitelné chybové hlášky. To mnohé ze začátečníků odradí dříve,

než se dostanou k zábavnějším částem programování, k řešení problémů.

Volíte si z nabízených voleb

V App Inventoru jsou komponenty a bloky tříděny do přihrádek, které můžete ihnedpouží

vat. Programujete tak, že vyhledáte blok – který vám pomůže ujasnit si požadovanoufunk

cionalitu – a přetáhnete ho do programu. Nebudete si muset pamatovat příkazy ani nahlížet

do příručky programování.

Ne všechny bloky do sebe zapadají

Namísto toho, aby prostředí App Inventor trestalo programátory chybovými hláškami,v mno

hých chybách jim zabraňuje už preventivně. Pokud například funkční blok očekává na vstupu

číslo, nebudete do něj moci zapojit text. Nevyhnete se tak všem chybám, ale jistě vám to pomůže.


22

Úvodem

S událostmi pracujete přímo

Tradiční programovací jazyky dostávaly svou podobu v době, kdy se programování podobalo

kuchyňským receptům, protože představovalo sled pokynů. V  případě grafi ckých rozhraní,

a zvláště pak v případě mobilních aplikací, kde k jednotlivým událostem může dojít kdykoliv

(například přijetí SMS či telefonního hovoru), většina programů již recepty nepřipomíná.Fun

guje spíše jako sada obslužných rutin událostí. Obslužná rutina události je způsob vyjádření,

které říká: „Pokud dojde k této události, aplikace se zachová následovně.“ V tradičních jazycích,

jakým je Java, musíte vědět, jak pracovat s třídami, objekty a speciálními objekty, kterénazývá

me naslouchacími procesy. Bez nich totiž nebudete schopni vyjádřit ani jednoduchou událost.

V prostředí App Inventor však můžete říci „Když uživatel klepne na tohle tlačítko, ...“ anebo

„Když telefon přijme textovou zprávu, ...“ pouhým přetažením podmínkového bloku „Když“.

Jaké můžete vytvářet aplikace?

V prostředí App Inventor můžete vytvářet řadu různých typů aplikací. Nechte pracovatpřed

stavivost a tvořte nejrůznější zábavné a užitečné aplikace.

Hry

Lidé často začínají u her, jakou je Krtek (kapitola 3), a u aplikací, které umožňují kreslit po

tvářích přátel vtipné obrázky (kapitola 2). Postupně budete moci vytvářet vlastní verzeslo

žitějších her, například Pac-Man a Space Invaders. Můžete dokonce využít senzory telefonu

a postavičkami pohybovat nakláněním telefonu (kapitola 5).

Vzdělávací software

Vytváření aplikací se neomezuje na jednoduché hry. Můžete také vytvářet informativnía vzdě

lávací aplikace. Můžete si napsat kvízovou aplikaci (kapitola 8), která vám i spolužákům pomůže

naučit se na test, či dokonce jinou kvízovou aplikaci (kapitola 10), která uživatelům umožní

sestavovat si vlastní kvízy. (Pamatujte na všechny rodiče, kteří by za takovou aplikaci nadlou

hých cestách s dětmi byli neskonale vděční!)

Aplikace sledující, kde se nacházíte

App Inventor zpřístupňuje GPS senzor, takže si můžete vytvářet i aplikace, které budou vědět,

kde se právě nacházíte. Budete si moci vytvořit aplikaci, která vám pomůže vzpomenout si,

kde jste zaparkovali auto (kapitola 7), aplikaci, která vám při koncertě či konferenci ukáže,

kde se právě nachází vaši přátelé, anebo vlastního virtuálního průvodce po vlastní škole,pra

covišti či muzeu.


Kdo může vytvářet aplikace?

23

Aplikace využívající pokročilé technologie

Můžete si vytvořit aplikaci na snímání čárových kódů, aplikace, které umí mluvit, naslouchat

(rozpoznat řeč), přehrávat hudbu, skládat hudbu (kapitola 9), přehrávat video, zjišťovat pozici

a pohyby telefonu, fotit a volat. Chytré telefony jsou v oblasti technologií něco jako švýcarské

kapesní nože a my můžeme být rádi, že se nám práci s technologiemi snaží v prostředí App

Inventor usnadnit celá skupina pracovníků společnosti Google.

SMS aplikace

Aplikace, díky níž řidiči nemusí za volantem psát textové zprávy (kapitola 4), je pouze jedním

z příkladů aplikací pracujících se SMS. Můžete si rovněž sestavit aplikaci, která budemilova

né osobě pravidelně odesílat zprávu „chybíš mi“, anebo aplikaci pro koordinaci velkých akcí

(kapitola 11). Chtěli byste mít aplikaci, která by vašim přátelům umožnila hlasovat textovými

zprávami, například o budoucí české superstar? V prostředí App Inventor si ji můžete vytvořit.

Aplikace pro řízení robotů

V kapitole 12 si ukážeme, jak vytvořit aplikaci, která může sloužit jako ovladač LEGO robota.

Telefon díky ní můžete použít jako dálkové ovládání anebo si ho můžete naprogramovat, aby

sloužil jako „mozek“, který si robot bude nosit s sebou. Robot bude s telefonem komunikovat

prostřednictvím technologie bluetooth. Komponenty prostředí App Inventor vám umožní

vytvářet i další aplikace pro řízení bluetooth zařízení.

Složité aplikace

App Inventor zásadním způsobem boří bariéru, která stojí před vstupem do světaprogramo

vání, a i líbivou, složitou aplikaci vám umožní vytvořit během několika hodin. Jeho jazyk však

nabízí i smyčky, podmínky a další programovací a logické nástroje, které jsou nezbytné při

vytváření složitějších aplikací. Divili byste se, kolik zábavy vám mohou při vytváření aplikací

přinést logické problémy.

Aplikace s přístupem k webu

App Inventor rovněž umožní vašim aplikacím komunikovat s webovým prostředím. Budete si

moci sestavit aplikace, které vytáhnou data z Twitteru, z RSS kanálu či z vyhledávače v obchodě

Amazon a umožní vám tak z čárového kódu knihy zjistit na Internetu její cenu.

Kdo může vytvářet aplikace?

App Inventor je volně dostupný všem. Je to online nástroj (nebudete ho tedy mít přímo napo

čítači) a budete s ním komunikovat prostřednictvím internetového prohlížeče. Nepotřebujete


24

Úvodem

k němu dokonce ani telefon, aplikace si můžete vyzkoušet na vestavěném emulátoru systému

Android. V lednu roku 2011 mělo prostředí desítky tisíc aktivních uživatelů, kteří v němvytvořili stovky tisíc aplikací.

Kdo jsou oni lidé? Byli to původně programátoři? Někteří ano, ale většina z nich nikoliv. Jedním

z nejnázornějších příkladů jsou kurzy, které vyučoval na Sanfranciské univerzitě (USF) jeden

ze spoluautorů, David Wolber. App Inventor se na této škole vyučuje v rámci běžné výuky IT,

která se zaměřuje primárně na studenty obchodu a humanitních věd. Mnozí ze studentů si

tento předmět zapíší, protože buď matematiku nemají rádi, či z ní mají strach. Absolvováním

kurzu však splní nutný matematický základ. Naprostou většinu z nich nikdy ani nenapadlo,

že by mohli někdy napsat počítačový program.

I přesto, že tito studenti nemají s programováním žádnou předchozí zkušenost, s prostředím

App Inventor nemají problémy a dokážou v něm vytvářet skvělé aplikace. Jedenz posluchačů anglického jazyka vytvořil první aplikaci starající se o SMS namísto řidiče, dva posluchači

komunikace vytvořili aplikaci, která uživateli řekne, kde má auto, a  jeden posluchač mezinárodních studií napsal aplikaci pro organizování velkých událostí (kapitola 11). KdyžWolberovi jednou večer, dlouho po konzultačních hodinách, zaťukal na dveře jeden ze studentů

výtvarných umění s otázkou, jak napsat while smyčku, bylo zřejmé, že App Inventor značně

přepsal hranice programování.

Důležitost tohoto prostředí si uvědomila i média. New York Times označil App Inventor jako

„prostředí pro tvorbu aplikací pro kutily“. San Francisco Chronicle píše o  studentech Sanfranciské univerzity a  říká, že „Google předkládá tvorbu aplikací širokým masám“. Časopis

Wired v článku o Danielu Finneganovi, autorovi aplikace pro automatické odesílání SMS za

jízdy, napsal, že „Finneganův příběh ukazuje, že nadešel čas, aby se počítačové programování

stalo věcí veřejnou“.

Dnes je již App Inventor dobře známý. Učí ho nyní na středních školách, na odpoledním kurzu

zaměřeném na technologie a inovace pro dívky v San Francisku, na Lakeside School v Seattlu,

ale také coby součást nových předmětů na několika univerzitách. Stránky a  fórum (http://

appinventor.googlelabs.com/forum/) prostředí App Inventor již navštěvují tisíce nadšenců,

podnikatelů, lidí, kteří chtějí prostřednictvím aplikace požádat o ruku, i ostatních zvědavců.

Chcete se zapojit? S programováním nemusíte mít vůbec žádné zkušenosti!

Styly používané v této knize

Tato kniha pracuje s následujícími typografi ckými styly:

Tučný text

Označuje bloky, které se v prostředí App Inventor objevují v programech. Kurzíva

Označuje e-mailové adresy, adresy URL, cesty k  souborům a  zdůrazňuje prvně použité

termíny.


Jak s touto knihou pracovat

25

Neproporcionální text

Označuje kód v jazyce Python a názvy komponent, vlastností, proměnných a funkcí.

Otestujte svou aplikaci: Tato ikona označuje instrukce k testování vyvíjené aplikace.

Poznámka: Tato ikona označuje tip, návrh či poznámku. Jak s touto knihou pracovat Tuto knihu lze vnímat jako učebnici určenou středním a vysokým školám, ale také jakopříručku pro ambiciózní vývojáře aplikací. Kniha je rozdělena do dvou oddílů: sady návodů k vytvoření konkrétních aplikací a oddílu manuálu prostředí App Inventor, který slouží spíše jako klasická učebnice programování. Příklady budou postupně složitější a složitější. V první kapitole začneme aplikací, v níž budete moci klepnout na obrázek kočky, která následnězamňouká, ale vytvoříme si taky webovou aplikaci, která dokáže prohledat knížku a najít o ní údaje pomocí webové služby obchodu Amazon (kapitola 13). Z koncepčního hlediska je vhodnější si příklady vyzkoušet, ale jakmile se s prostředím trochu seznámíte, budete je moci přeskočit. V návodech najdete podrobné pokyny a snímky bloků, které vám pomohou. Rovněž zde najdete odkazy na konkrétní oddíly manuálu Inventoru, v nichž si své znalosti budete moci upevnit. Jednou z výhod papírové knihy je skutečnost, že prostředí App Inventor obsadí většinuobrazovky a na další okno elektronické příručky byste neměli dostatek prostoru. Představujeme si, že knihu budete mít při procházení příkladů a zkoušení stále vedle sebe. Rovněž doufáme, že se vám kniha zalíbí natolik, že si ji vezmete s sebou, i když půjdete od počítače, abyste se mohli začíst do koncepčnějších kapitol manuálu Inventoru. Učitelům a žákům může tato kniha sloužit jako učebnice úvodu do počítačových věd, aletaké jako učebnice do libovolného předmětu, ve kterém se studenti učí praktickým zkoušením. Z našich zkušeností plyne, že nejúčinnější je sled návod ¬ diskuse ¬ tvorba. Takže můžete začít tím, že studentům uložíte vytvořit několik aplikací popsaných v  návodech, aniž byste od studentů očekávali, že budou aplikace vytvářet hned zcela přirozeně. Následně můžete studentům ke studiu zadat kapitolu z oddílu manuálu a pomalu pokračovat diskusí ve třídě a přednáškou. Ve třetí fázi pak podnítíte zvědavost: Nechte studenty vytvořit některouz navržených variací aplikací, které najdete na koncích návodů, aniž byste jim podali podrobné pokyny. Nakonec nechte studenty, aby přišli s vlastními nápady a aplikacemi. Soubory pro každou z kapitol si můžete společně s příklady kódu rovněž stáhnout nanásledující adrese: http://examples.oreilly.com/0636920016632/.

Otestujte svou aplikaci:Tato ikona označuje instrukce k testování vyvíjené aplikace.

Poznámka: Tato ikona označuje tip, návrh či poznámku.


26

Úvodem

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:

Computer Press

Albatros Media a.s., pobočka Brno

IBC

Příkop 4

602 00 Brno nebo

sefredaktor.pc@albatrosmedia.cz Computer Press neposkytuje rady ani jakýkoli servis pro aplikace třetích stran. Pokud budete mít dotaz k prog ramu, obraťte se prosím na jeho tvůrce. Zdrojové kódy ke knize Z adresy http://knihy.cpress.cz/K2131 si po klepnutí na odkaz Soubory ke stažení můžetepřímo stáhnout archiv s ukázkovými kódy. Errata Přestože jsme udělali maximum pro to, abychom zajistili přesnost a správnost obsahu, chybám se úplně vyhnout nelze. 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 oznámíte. Ostatní uživatele tak můžete ušetřit frustrace a nám můžete pomoci zlepšit následující vydání této knihy. Veškerá existující errata zobrazíte na adrese http://knihy.cpress.cz/K2131 po klepnutí na odkaz Soubory ke stažení.


27

KAPITOLA 1

Ahoj, kocoure

V této kapitole začneme s tvorbou aplikací. Představíme si v ní klíčové prvky App Inventoru –

Designér komponent (Component Designer) a Editor bloků (Blocks Editor) – a při přípravě vaší

první aplikace, AhojKocoure, si ukážeme několik základních kroků. Na konci kapitoly budete

schopni vytvořit si vlastní aplikaci.

V nových počítačových systémech se tradičně jako prvníprogram spouštěl „Hello World“ (Ahoj, světe), který ukázal, zda

je vše správně propojeno. Tato tradice se datuje odsedmdesátých let minulého století, kdy tento program napsal BrianKernighan v programovacím jazyce C v Bellových laboratořích.

(Brian nyní přednáší v Googlu v týmu App Inventoru!) V App

Inventoru dokážou i  ty nejjednodušší aplikace více, než jen

zobrazit text: Přehrají hudbu anebo zareagují na dotyk. Takže

začněme přímo s něčím zábavnějším. Vaší první aplikací bude

„AhojKocoure“, obrázek kocoura, který zamňouká, když se ho

dotknete, a zapřede, když telefonem zatřesete.

Obrázek 1.1 Aplikace AhojKocoure

V této kapitole:

 Co se naučíte

 Prostředí App Inventor

 Design komponent

 Defi nování chování

komponent

 Sbalení aplikace ke stažení

 Sdílení aplikace

 Variace

 Shrnutí


28

KAPITOLA 1 Ahoj, kocoure

Co se naučíte

V této kapitole se budeme věnovat následujícím tématům:

 Stavbě aplikací výběrem komponent a následným defi nováním toho, co a kdy mají dané

komponenty provádět.

 Výběru komponent v  Designéru komponent (Component Designer). Některé komponenty jsou na displeji telefonu viditelné, jiné nikoliv.

 Vkládání médií (zvuku a obrázků) do aplikací přímo z počítače.

 Práci s Editorem bloků (Blocks Editor), v němž budeme sestavovat bloky určujícíchování komponent.

 Testování aplikací v App Inventoru. Uvidíte tak, jak bude aplikace vypadat a jak se bude

chovat v telefonu již při vývoji.

 Balíčkování vytvořených aplikací a jejich stažení do telefonu.

Prostředí App Inventor

App Inventor si můžete připravit dle pokynů na adrese http://appinventor.googlelabs.com/learn/

setup/. Prostředí sice spouštíme primárně ve webovém prohlížeči, ale přesto si budete muset

do počítače stáhnout příslušný soft ware a upravit nastavení telefonu. Obvykle trvá celáoperace pouze několik minut, i když někdy mohou nastat komplikace při nastavování ovladačů

zařízení konkrétních telefonů Android. Pokud máte s telefonem potíže, doporučujeme vám

použít emulátor prostředí Android, který je k App Inventoru přibalen.

Programovací prostředí App Inventoru nabízí tři základní části, viz obrázek 1.2:

 Designér komponent (Component Designer), který vidíte po levé straně na obrázku 1.2,

je spuštěn v okně prohlížeče. Budete v něm vybírat komponenty pro své aplikacea nastavovat jim vlastnosti.

 Editor bloků (Blocks Editor) se spouští v samostatném okně – při práci s aplikací ječasto nejjednodušší přenést si ho napravo od okna Designéra komponent. V Editoru bloků

defi nujeme chování komponent.

 V telefonu si můžete vyvíjené aplikace spustit a vyzkoušet. Pokud nemáte telefons operačním systémem Android, můžete si aplikace otestovat v emulátoru (viz pravý spodní

roh obrázku 1.2), který je součástí systému. App Inventor spustíte na adrese http://appinventor.googlelabs.com. Pokud prostředí spouštíte poprvé, zobrazí se vám stránka projektů, která bude prázdná, protože jste doposud žádnýprojekt nevytvořili. Nový projekt vytvoříte klepnutím na New (nový) v levé horní části stránky. Zadejte název „AhojKocoure“ (jedno slovo bez mezer) a klepněte na OK.


Design komponent

29

Obrázek 1.2 Designér komponent, Editor bloků a emulátor systému Android

První okno, které se vám otevře, bude Designér komponent (Component Designer). Jakmile

se tak stane, klepněte na Open the Blocks Editor (otevřít Editor bloků) v  nabídce napravo.

V samostatném okně se pomocí nástroje Java Web Start otevře Editor bloků. Zobrazenézprá

vy týkající se prostředí Java vás nemusí trápit – App Inventor pomocí tohoto prostředí, které

byste na počítači již měli mít nainstalováno, spouští Editor bloků (Blocks Editor). Spuštění

trvá zpravidla přibližně půl minuty.

Nedojde-li k chybě, zobrazí se okno Editoru bloků a vy uvidíte v horní části obrazovkynapra

vo dvě tlačítka, viz obrázek 1.3.

Obrázek 1.3 Připojte telefon k počítači a klepněte na New emulator (nový emulátor), poté

klepněte na Connect to Device (připojit k zařízení)

Pokud vlastníte telefon se systémem Android a máte k dispozici USB kabel, připojte telefon

k  počítači a  klepněte na Connect to Device (připojit k  zařízení). Pokud si však chcete vy

zkoušet vlastní aplikace v emulátoru, klepněte na New emulator (nový emulátor) a počkejte

asi půl minuty, dokud se emulátor nespustí. Až bude emulátor připraven k použití, klepněte

na Connect to Device (připojit k zařízení), App Inventor spustí danou aplikaci v emulátoru.

Pokud se vše podaří, mělo by se vám zobrazit okno Designéra komponent (ComponentDe

signer), okno Editoru bloků (Blocks Editor), a pokud jste si zvolili emulátor, tak i jeho okno.

(Vaše obrazovka by měla vypadat podobně jako na obrázku 1.2 výše, ale měla by býtz větši

ny prázdná.) Pokud narazíte na komplikace, projděte si pokyny k instalaci na adrese http://

appinventor.googlelabs.com/learn/setup/.

Design komponent

Prvním nástrojem, s nímž budete pracovat, bude Designér komponent (Component Designer)

nebo prostě jen Designér. Komponenty jsou prvky, jejichž kombinováním skládáme aplikace,


30

KAPITOLA 1 Ahoj, kocoure

podobně jako ingredience receptu. Některé komponenty jsou velmi prosté, napříkladkomponenta Label, která na obrazovce zobrazí text, či komponenta Button, která klepnutímvyvolává akci. Jiné komponenty mohou být komplexnější: kreslicí plátno Canvas uchová obrázky či

animace, akcelerometr, pohybový senzor, který funguje jako ovládání konzole Wii a rozpozná

pohyb či zatřesení telefonem. Komplexnějšími komponentami jsou i prvky, které posílajítextové zprávy, přehrávají hudbu a video, načítají údaje z webových stránek apod.

Když otevřete Designér, otevře se tak, jak to vidíte na obrázku 1.4.

Obrázek 1.4 Designér komponent

Designér je rozdělen do několik částí:

 Uprostřed najdeme bílou oblast nazvanou Viewer (prohlížeč). Zde umísťujeme komonenty a tvoříme z nich mapy, podle nichž chceme sestavovat aplikace. Prohlížeč nám

vzhled aplikace nastíní jen v hrubých nárysech, takže kupříkladu řádek textu může být

v aplikaci zalomen v jiném místě, než v jakém je zalomen v okně prohlížeče. Chcete-li

vidět, jak bude aplikace vypadat skutečně, budete si ji buď muset stáhnout do telefonu (to

si ukážeme zanedlouho v oddíle „Sbalení aplikace ke stažení“) anebo ji zobrazitv emulátoru App Inventoru.

 Nalevo od prohlížeče najdete paletu (Palette), kterou tvoří seznam komponent, z nichž

vybíráme. Paleta je rozdělena do oddílů. Prozatím budou viditelné pouze základníkomonenty, ale ostatní komponenty si můžete prohlédnout klepnutím na hlavičky oddílů

Media, Animation (animace) apod.


Design komponent

31

 Napravo od prohlížeče najdeme seznam komponent (Components), který uvádí komonenty použité v  daném projektu. Na seznamu se objeví všechny komponenty, které

přetáhnete do prohlížeče. Momentálně se v projektu nachází pouze jedna komponenta:

Screen1, která zastupuje samotnou obrazovku telefonu.

 Pod seznamem komponent se nachází oblast zobrazující média (obrázky a hudbu) použitá

v projektu. V našem projektu se doposud žádná média nenachází, ale brzy nějaká vložíme. Zcela napravo pak najdete oddíl ukazující vlastnosti komponent (Properties). Když na některou z komponent klepnete v prohlížeči, zobrazí se zde její vlastnosti. Vlastnosti jsou dílčí prvky komponent, které lze upravovat. (Například klepnutím na komponentu Labelzobrazíte vlastnosti týkající se barvy, textu, fontu apod.) Nyní jsou zobrazeny vlastnosti obrazovky (Screen1), mezi nimiž najdeme barvu pozadí, obrázek na pozadí a titulek. Pro aplikaci AhojKocoure budeme potřebovat dvě viditelné komponenty (tedy komponenty, které v aplikaci skutečně uvidíme): nápis Label s textem „Pohlaďte kocoura“ a tlačítko Button s  obrázkem kočky. Rovněž budeme potřebovat neviditelnou komponentu Sound, která umí přehrávat zvuky, například „mňau“, a komponentu Accelerometer, která zaregistruje zatřepání telefonem. Nebojte se – všechny tyto komponenty si představíme postupně krok za krokem. Nápis Jako první budeme přidávat komponentu Label (nápis):

1. Přejděte do palety, klepněte na Label (na seznamu je asi na páté pozici) a přetáhněte ji

do prohlížeče. V prohlížeči se zobrazí obdélníkový tvar s nápisem „Text for Label1“ (text

nápisu).

2. Podívejte se do pole vlastností napravo od Designéra. Najdete zde vlastnosti nápisu.Přibližně v polovině seznamu se nachází vlastnost Text, která nabízí textové pole prozadání nápisu. Sem zadejte „Pohlaďte kocoura“ a stiskněte Enter. V prohlížeči se text nápisu

aktualizuje.

3. Klepnutím do pole vlastnosti BackgroundColor, které momentálně ukazuje hodnotuNone (žádná), změňte barvu pozadí. V nabízeném seznamu vyberte modrou (Blue).Rovněž změňte barvu textu, TextColor, nápisu na žlutou (Yellow).



       
Knihkupectví Knihy.ABZ.cz - online prodej | ABZ Knihy, a.s.
ABZ knihy, a.s.
 
 
 

Knihy.ABZ.cz - knihkupectví online -  © 2004-2019 - ABZ ABZ knihy, a.s. TOPlist