BAKALÁŘSKÁ PRÁCE. Vývoj aplikací na platformě Android. Application development for the Android platform. Vojtěch Sázel

Rozměr: px
Začít zobrazení ze stránky:

Download "BAKALÁŘSKÁ PRÁCE. Vývoj aplikací na platformě Android. Application development for the Android platform. Vojtěch Sázel"

Transkript

1 BAKALÁŘSKÁ PRÁCE Vývoj aplikací na platformě Android Application development for the Android platform Vojtěch Sázel

2 Unicorn College 2010 Unicorn College, V Kapslovně 2767/2, Praha 3, Název práce v ČJ: Název práce v AJ: Autor: Vývoj aplikací na platformě Android Application development for the Android platform Vojtěch Sázel Akademický rok: 2009/2010 Kontakt: vojtech@sazel.cz Tel.: (+420)

3 UCL Bachelor's Thesis Coordinator UCL Zadání závěrečné bakalářské práce Bachelor Thesis Sázel Vojtěch :56 - Sázel Vojtěch - Zadání BP - Vývoj aplikací na platformě Google Android (ZBP/ _003) Artefakt Zadavatel DIT Zadání závěrečné bakalářské práce Student (Sázel Vojtěch) ZADÁNÍ ZÁVĚREČNÉ BAKALÁŘSKÉ PRÁCE (ZBP) Název ZBP v češtině Název ZBP v angličtině Vývoj aplikací na platformě Google Android Application development for the Google Android platform Studijní obor ICT Project Management Akademický rok 2009/2010 Vedoucí závěrečné práce Petr Maneth Termín odevzdání Zadání ZBP Termín odevzdání práce ZBP Cíl závěrečné bakalářské práce CZ: Cílem práce je popsat mobilní platformu Android, její architekturu a API (Aplikační programové rozhraní) Posoudit výhody a nevýhody virtuálního stroje Dalvik pro jeho využití na mobilních zařízeních. Součástí práce je vzorová aplikace včetně zdrojových kódů. EN: The goal is to describe Android mobile platform, its architecture and API (Application programming interface). Consider advantages and disadvantages of virtual machine Dalvik and its usage on mobile devices. This work contains also example application with source codes. Klíčová slova: Google, Android, Java, Dalvik, Linux Základní literatura Ableson, F.,Collins, C., Robi, S.: Unlocking Android: A Developer's Guide,, Manning Publications, 2009 Rogers R., Lombardo, J., Mednieks, Z., Blake, M.: Android Application Development: Programming with the Google SDK, 1st edition, O'Reilly Media, 2009 Burnette, E.: Hello, Android: Introducing Google's Mobile Development Platform, 2nd edition, Pragmatic Bookshelf, Unicorn College s.r.o.

4 Prohlá²ení Prohla²uji, ºe svou bakalá skou práci na téma Vývoj aplikací na platform Android jsem vypracoval samostatn pod vedením vedoucího bakalá ské práce a s pouºitím odborné literatury a dal²ích informa ních zdroj, které jsou v práci citovány a jsou téº uvedeny v seznamu literatury a pouºitých zdroj. Jako autor uvedené bakalá ské práce dále prohla²uji, ºe v souvislosti s vytvo ením této bakalá ské práce jsem neporu²il autorská práva t etích osob, zejména jsem nezasáhl nedovoleným zp sobem do cizích autorských práv osobnostních a jsem si pln v dom následk poru²ení ustanovení Ÿ 11 a následujících autorského zákona. 121/2000 Sb. V Praze dne... Jméno P íjmení iv

5 Abstrakt Cílem práce je popsat mobilní platformu Android, její architekturu a API (Aplika ní programové rozhraní). Posoudit výhody a nevýhody virtuálního stroje Dalvik pro jeho vyuºití na mobilních za ízeních. Významnou ástí je popis vývojového prost edí, základních princip vývoje aplikací pro Android a tvorby grackého uºivatelského rozhraní. V poslední ásti práce jsou popsány r zné moºnosti aplika ního frameworku. Díky virtuálnímu stroji Dalvik je zaru ena nezávislost aplikací na platform. Se systémem intent m ºe vývojá snadno nahradit dodávané aplikace svými vlastními alternativami. Spolu se zdrojovými kódy vypracovaných p íklad p iná²í tená i práce základní znalosti nutné k tomu, aby za al s vývojem na této mobilní platform. Klí ová slova Google, Android, Java, Dalvik, aktivita, intent, poskytovatel obsahu, Linux Abstract The goal is to describe Android mobile platform, its architecture and API (Application programming interface). Consider advantages and disadvantages of virtual machine Dalvik and its usage on mobile devices. The important part is description of development environment, key principles of application develoment for Androd and design of graphical user interface. Many interetsting capabilities of the application framework are described in the last part of the work. Due to the use of Dalvik virtual machine hardware independence is assured. Developer can also easily replace any supplied application with his own with use of intent system. The work brings the basic know-how of software developent on this mobile platform. Keywords Google, Android, Java, Dalvik, activity, intent, content provider, Linux v

6 Pod kování D kuji vedoucímu bakalá ské práce Petrovi Manethovi za ú innou metodickou, pedagogickou a odbornou pomoc a dal²í cenné rady p i zpracování mé bakalá ské práce. Také d kuji koleg m z Týmu integrace a validace terminál z útvaru Správy sluºeb spole nosti T-Mobile Czech Republic a.s. za zap j ení mobilního telefonu HTC Desire s opera ním systémem Android pro ú ely této práce. vi

7 Obsah Úvod 1 1 Platforma Android Architektura platformy Virtuální stroj Dalvik a p eklada bytecode Základ pro tvorbu aplikací Android SDK Vývojové prost edí Eclipse Tvorba nového projektu Lad ní aplikace Základní prvky prost edí Aplikace, aktivita, sluºba a p ijíma (Application, Activity, Service and BroadcastReceiver) Intenty a intentové ltry (Intent) Poskytovatel obsahu (Content Provider) Manifest a bezpe nostní omezení aplikací Nasazení aplikace a Android Market Specika vývoje mobilních aplikací Návrh grackého uºivatelského rozhraní (GUI) Zdroje (Resources) a jejich pouºití v kódu Rozvrºení (Layout) Prvky GUI Text (TextView) a textové pole (EditText) Tla ítko (Button) a listenery Adaptérové prvky a adaptéry Toust (Toast) Notikace vii

8 3.3.6 Tvorba nabídek Dialogy Dal²í prvky Moºnosti aplika ního frameworku Funkce telefonního p ístroje Sí ové sluºby Multimediální funkce Loka ní sluºby, senzory a roz²í ená realita SQLite OpenGL ES Android Native Development Kit (Android NDK) WebKit, HTML5 a tvorba mobilních webových aplikací Záv r 42 Conclusion 43 Seznam literatury a zdroj 44 Slovník pojm a zkratek 47 Slovník pojm a zkratek 47 Seznam obrázk 52 Seznam tabulek 53 A P íloha - CD 54 B P íloha - P íklad souboru manifestu 54 viii

9 1 Úvod Opera ní systém Android je mladou platformou ur enou zejména pro provoz na mobilních za ízeních. Android není jen opera ním systémem, ale celou platformou pro vývoj mobilních aplikací. Uºivateli nabízí velkou míru svobody ve tvorb aplikací a p ístupu k funkcím za ízení p es standardizované aplika ní programové rozhraní (API). Tato práce je zam ena na vývoj aplikací na této platform a popis architektury systému. Proberu zde odli²nosti návrhu aplikací pro mobilní za ízení od vývoje na klasickém osobním po íta i. Sou ástí práce jsou i krátké p íklady pro ilustraci r zných vlastností systému. ƒást práce je zam ena také na unikátní virtuální stroj Dalvik, který zaji² uje b h aplikací na platform Android. Práce je svým rozsahem a zam ením ur ena hlavn k orientaci v platform Android a v jednotlivých oblastech nezachází do velkých detail. Od tená e se o ekává základní orientace v problematice vývoje software, ov²em p ípadné neznámé pojmy jsou vysv tleny ve slovníku pojm a zkratek, který je sou ástí práce.

10 1 PLATFORMA ANDROID 2 1 Platforma Android Systém Android vznikl ve spole nosti Android, Inc., která byla v roce 2005 p evzata spole ností Google, Inc. Google se nadále podílel na vývoji a v roce 2007 byla zaloºena Open Handset Alliance (OHA), sdruºující Google, r zné mobilní operátory, výrobce hardwaru a dal²í rmy, které nadále tento systém v sou asnosti vyvíjí. Android jako takový je pod open-source licencemi, coº umoº uje jednotlivým spole nostem i jednotlivc m snadné úpravy v systému, bez nutnosti dokupování dal²ích licencí i patent. Jinak je také Android ozna ován jako Android Open Source Project (AOSP) [1]. První komer n dostupný telefon pro tuto platformu byl v roce 2008 spole ností T-Mobile uveden telefon T-Mobile G1 1 [2], vlastní telefon byl vyrobený spole ností HTC. Tento a dal²í podobné telefony uvedené v roce 2009 jsou ozna ovány za první generaci za ízení Android. Na t chto za ízeních je moºné se setkat zejména s Androidem ve verzích 1.x. Po et za ízení na této platform se za al rychle roz²i ovat a v roce 2010 nastoupila druhá generace za ízení s verzemi Android 2.x a výkonnými ARMovými procesory Qualcomm architektury Snapdragon taktovanými minimáln na 1GHz. Android lze nalézt nejen v mobilních telefonech, ale také v tabletech, netboocích, te kách elektronických knih a dal²ích za ízeních [3]. 1.1 Architektura platformy Základem Androidu je jádro Linuxu, které je dnes nej ast ji pouºívaným open-source jádrem opera ního systému. Obsahuje ovlada e nutné ke komunikaci s hardwarem za ízení. Jádro je navíc upraveno a obohaceno o specické v ci jako je mezi-procesová komunikace binder, speciální sdílená pam ashmem, low-memory killer, specický power management a dal²í [4]. Tyto prvky jsou pro Android specické a pot ebné pro provoz na za ízeních s omezenou opera ní pam tí a mén výkonnými procesory (CPU). Na obrázku 1 je vyzna ena tato ást jako Linux Kernel. Druhou vrstvou jsou systémové knihovny. Mezi n pat í klasické dynamicky linkované knihovny 2 p eloºené v nativním 3 kódu daného CPU, které implementují 1 téº znám jako HTC Dream 2 jedná se o známé soubory koncovkou.so 3 nativní = vlastní pro danou platformu, specický pro daný systém a procesor

11 1 PLATFORMA ANDROID 3 Obrázek 1: High-level pohled na architekturu Androidu [1] aplika ní rozhraní nad voláními linuxového jádra. Zejména sem pat í standardní knihovny jazyka C (libc), gracké knihovny (SGL, OpenGL ES, Surface Manager), knihovny pro práci s multimédii (kodeky a Media Framework), knihovny pro práci s databází (SQLite), knihovna pro vykreslování TrueType font (FreeType), jádro webového prohlíºe e (WebKit) a knihovna pro ²ifrovanou sí ovou komunikaci (SSL). Tato ást je na obrázku 1 ozna ena jako Libraries. Dal²í ástí je vlastní b hové prost edí Androidu a tím je virtuální stroj Dalvik. Virtualizace zaji² uje nezávislost b ºících aplikací na hardwaru. Na obrázku 1 je ozna eno jako Android Runtime a podrobn ji ho proberu v kapitole 1.2. Nad Dalvikem a systémovými knihovnami je aplika ní framework Androidu (Application Framework). Obsahuje pot ebné t ídy a rozhraní pro stavbu aplikací na vy²²í úrovni, která je platformn nezávislá. N které ásti aplika ního frameworku jsou p ímo jen obalením volání systémových knihoven pomocí nativních volání 4. Vlastní aplika ní framework je napsaný v programovacím jazyce Java, p eloºený do kódu virtuálního stroje Dalvik a je uloºený p ímo na daném za ízení. Jednotlivé aplikace se pak jiº p ímo pí²í v aplika ním frameworku. Jsou v n m napsány i v²echny aplikace, které jsou standardn se systémem dodávány. Na obrázku 1 se jedná o ást Applications. Je d leºité si uv domit, ºe Android nelze povaºovat za klasickou linuxovou dis- 4 JNI - Java Native Interface

12 1 PLATFORMA ANDROID 4 tribuci, b ºným zp sobem na n m nelze spou²t t linuxové programy a p istupovat p ímo k nízkoúrov ovým funkcím systému. Gracký systém není kompatibilní s linuxovým X serverem. P ístup do systému je omezen na uºivatelský p ístup (user-space) a to p es aplika ní framework, p ípadn JNI volání, která ov²em podléhají omezení v uºivatelském p ístupu. Na v t²in za ízení je v²ak moºno získat superuºivatelské oprávn ní (tzv. root) a díky n mu je moºné pln vyuºít moºností, které poskytuje linuxový systém. Tato moºnost v²ak není v t²inou podporována výrobci hardware. 1.2 Virtuální stroj Dalvik a p eklada bytecode Jedním ze základních princip Androidu je nezávislost aplikací na hardware, zejména pak na instruk ní sad pouºitého procesoru. Díky tomu je moºné nap íklad provozovat stejné aplikace pro Android na procesoru ARM, tak na architektu e x86. Samoz ejm to platí pokud v aplikaci není pouºito nativních knihoven, které by se musely p ekládat pro kaºdou architekturu zvlá². Toho je docíleno pomocí virtuálního stroje Dalvik, na kterém b ºí v²echny aplikace 5. Virtuální stroj je v podstat softwarovou simulací procesoru 6 s vlastní instruk ní sadou. Tak jak jsou programy p ekládány p eklada em ze zdrojového kódu ve vy²²ím programovacím jazyce do instrukcí strojového kódu fyzického procesoru (machine code, nap. ARM nebo x86), jsou p ekládány programy do instrukcí kódu virtuálního stroje, tyto instrukce jsou ozna ovány jako bytecode. Bytecode je pak p i b hu programu interpretován virtuálním strojem. Pouºitím virtuálního stroje se Android zna n odli²uje od n kterých jiných mobilních opera ních systém jako Symbian nebo iphone OS, které vyuºívají p ímé kompilace aplikací do strojového kódu daného procesoru [5] [6]. Naopak se více podobá zab hlému Java ME, pouºívanému na velké ásti jednoduchých mobilních telefon, který také pouºívá virtuálního stroje. Oproti n mu je v²ak komplexn j²í a poskytuje daleko více moºností. V p ípad Androidu se pro vývoj aplikací pouºívá programovacího jazyka Java. Aplika ní framework není kompatibilní s Java ME 7, ale pokrývá ást Java SE pouºívanou na b ºných po íta ích. Zdrojový kód se p ekládá standardním p eklada em dodávaným s Java SE SDK, vzniklý bytecode je pro virtuální stroj Java VM, není v²ak kompatibilní s Dalvikem [9]. Dalvik vyuºívá vlastní sadu instrukcí a kód je uloºen 5 výjimkou jsou pouze systémové a podp rné procesy Linuxu, které b ºí mimo Dalvik 6 asto ani neexistuje jeho skute ná fyzická (hardwarová) implementace 7 portování (p enos) Java ME aplikací nebo jejich spou²t ní v Androidu lze dosáhnout mnoha zp soby, nap. p es Micro Emulator nebo Android J2ME Runner [7][8]

13 1 PLATFORMA ANDROID 5 ve specickém DEX formátu, do kterého je konvertován nástrojem dx, který je sou ástí Android SDK (více v kapitole 2.1) [10]. Instruk ní sada Dalviku je registrov orientovaná, data jsou mapována do v t²ího mnoºství registr a instrukce pak p i svém vykonávání pracuje s obsahem t chto registr [10]. Tím se li²í od zásobníkov orientovaného principu pouºitého v Java VM [11], kde se data postupn ukládají na zásobník, instrukce pak nemají ºádné operandy (parametry instrukcí). Registrov orientovaný p ístup je úsporn j²í na po et instrukcí 8, instrukce jsou v²ak del²í protoºe obsahují také specikace registr. Pro dokreslení tohoto rozdílu jsem napsal krátkou t ídu s jedinou metodou, která se te ísla od 1 do ísla zadaného parametrem. public static int sectido(int i) { } int k=0; //line 10 for(int j=1;j<=i;j++) { //line 11 } k+=j; //line 12 return k; //line 14 Za pomocí nástroje ClassleAnalyzer [12] pro Java VM a nástroje dedexer [13] pro Dalvik je moºné bytecode p evést do pro lov ka itelné podoby a dále ho analyzovat 9. Na obrázku 2 je vid t rozdíl v po tu instrukcí a také zásobníkový a registrový model obou virtuálních stroj. DEX formát zahrnuje také mnohé optimalizace. Ve²keré t ídy jsou slou eny do jediného DEX souboru 10. P i nahrání do virtuálního stroje je bytecode optimalizovaný, uloºený do cache a sdílený mezi v²emi procesy ve virtuálním stroji. Programy v DEX formátu jsou velice kompaktní a úsporné na pam, aplikace v telefonu pak zabírají z ídkakdy více neº jednotky megabajt. Dal²ím zajímavým aspektem je just-in-time (JIT) kompilace instrukcí virtuálního stroje do nativních instrukcí fyzického procesoru daného za ízení, tato kompilace probíhá postupn p ímo za b hu programu, p iná²í pak zna né zrychlení provád ní programu. JIT je zabudovaný aº v Dalviku ve verzi Android 2.0, jen v²ak v experimentální podob pro CPU ARMv7. První testy vypadají slibn a p iná²í aº trojnásobný nár st výkonu [14]. 8 dle [9] aº o 30% 9 tyto nástroje jsou ozna ovány asto jako disassemblery 10 na rozdíl od Java VM, kde jsou samostatn pro kaºdou t ídu

14 1 PLATFORMA ANDROID 6 Obrázek 2: P íklad instrukcí Java VM vs. Dalvik VM

15 2 ZÁKLAD PRO TVORBU APLIKACÍ 7 2 Základ pro tvorbu aplikací Pro Android je dodávaný soubor vývojových nástroj Android SDK [15] a roz²í ení pro vývojové prost edí Eclipse [16]. Tyto nástroje zna n zjednodu²ují a urychlují vývoj aplikací. 2.1 Android SDK Sou ástí SDK je emulátor pro v²echny aktuáln dostupné verze aplika ního frameworku, knihovny a dokumentace aplika ního frameworku a nástroje pro kompilaci. Obrázek 3: Emulátor Androidu Emulátor telefonu je kompletní prost edí Androidu, je zaloºené na virtualiza ní technologii QEMU [17] [15]. Pomocí emulátoru je moºné simulovat r zné kongurace prost edí. Mezi n pat í r zná rozli²ení obrazovky, r zné velikosti opera ní pam ti i hardwarová za ízení jako je GPS. Emulátor je schopný vyvolávat i n které akce, které by vznikaly za b hu v normálním provozu, nap íklad p íchod SMS nebo p íchozí volání. Díky emulátoru je moºné vyvíjet a ladit aplikace zcela bez nutnosti vlastnit fyzické za ízení s Androidem (viz. obrázek 3). Pokud je k dispozici i fyzické za ízení, lze aplikace ladit pomocí propojení s telefonem p es USB kabel (více v kapitole 2.2.2).

16 2 ZÁKLAD PRO TVORBU APLIKACÍ Vývojové prost edí Eclipse Po instalaci roz²í ení do Eclipse je nutné nejprve nastavit cestu k Android SDK. V moºnostech projekt nám p ibude Android Project a Android Test Project. V této práci se budu zabývat pouze Android Project, druhý typ projektu slouºí k sestavování unit test 11 pomocí testovacího frameworku zaloºeného na JUnit [15] [18]. Obrázek 4: Vývojové prost edí Eclipse Vlastní prost edí Eclipse je rozd leno do r zných tzv. perspektiv (viz. obrázek 4), jsou zvlá² pro r zné programovací jazyky, zvlá² pro vývoj a lad ní. Pro vlastní vývoj se pouºívá standardní Java Perspective a pro lad ní Debug Perspective (kapitola 2.2.2). Pokro ilej²í lad ní na za ízení nebo na emulátoru umoº uje speciální perspektiva DDMS (Dalvik Debug Monitor Server) Tvorba nového projektu Nový projekt se vytvá í jako Android Project. To je velmi d leºité a zajistí to správné nastavení projektu a p ed-generování adresá ové struktury (viz. tabulka 1). Kaºdý 11 testy jednotlivých t íd (jednotek) p ímo na úrovni programovacího jazyka

17 2 ZÁKLAD PRO TVORBU APLIKACÍ 9 nový projekt za íná zadáním názvu projektu, verzí pouºitého aplika ního frameworku, názvem aplikace a balí ku 12. Po vytvo ení projektu je zaloºena základní adresá ová struktura projektu [9]. Soubor / Adresá Popis Povinný Popisný soubor celé aplikace. Ano Denuje aktivity, sluºby, poskytovatele a intenty. Obsahuje také nastavení práv aplikace k p ístupu k zabezpe eným ástem frameworku. (kapitola 2.3.4) src Zdrojové kódy aplikace. Ano assets Dal²í p ídavné soubory, které Ne mohou obsahovat data p ibalená k aplikaci. res Soubory zdroj (kapitola Ano 3.1) bin P eloºené binární soubory - (není vid t v projektu) gen Automaticky generované - zdrojové kódy AndroidManifest.xml Tabulka 1: Adresá ová struktura Android projektu Lad ní aplikace Hotová aplikace se ladí za pomocí perspektivy Debug. Do perspektivy se p epne Eclipse automaticky po spu²t ní Debug reºimu. Ladící reºim lze vytvo it kliknutím na ²ipku u ikony a výb rem Debug Congurations..., kongurace se vytvá í jako Android Application (viz. obrázek 5). V záloºce Target lze nastavit za ízení, na kterém se bude aplikace ladit. Výb r se provádí p es aplikaci AVD Manager, která je sou ástí Android SDK. V AVD je moºné vybrat vlastní fyzické za ízení p ipojené p es USB nebo vytvo it i pouºít za ízení emulované. Emulovaná za ízení lze kongurovat na r zné hardwarové parametry, mezi které pat í zejména rozli²ení p ístroje a p ipojený obraz simulující pam ovou kartu. P i lad ní se aplikace automaticky nainstaluje na za ízení a spojí se s ladícím programem. Stejn jako p i lad ní b ºné Javové aplikace je moºné krokovat program, nastavit body p eru²ení a sledovat prom nné Java package, nap. cz.sazel.android 13 b ºné anglické termíny pro tyto pojmy jsou step, breakpoints a watches

18 2 ZÁKLAD PRO TVORBU APLIKACÍ 10 Obrázek 5: Debug kongurace Lad ní na fyzickém za ízení vyºaduje instalaci USB ovlada e za ízení, které je sou ástí Android SDK [15]. K tomu je nutné zapnout podporu lad ní v telefonu, kde v eské verzi systému to je Nastavení > Aplikace > Vývoj > Lad ní USB. Dal²ím nutným krokem, ale pouze pro lad ní na fyzickém za ízení, je povolení lad ní v manifestu (podrobn ji v kapitole 2.3.4) parametrem Application > Debuggable na true (v tagu application atribut android:debuggable=true). V p ípad lad ní na emulátoru sta í vybrat v AVD Manageru p íslu²né za ízení emulátoru. Ve speciální perspektiv DDMS lze monitorovat za ízení z hlediska b ºících proces, vláken a monitorování alokace pam ti. V okn LogCat se vypisují v²echny d leºité události, které v systému probíhají. U emulátoru lze p es tuto perspektivu simulovat p íchod SMS nebo volání, p ípadn nastavovat simulovanou pozici GPS. V neposlední ad lze k r zným ladícím ú el m vyuºít nástroje adb, který je sou ástí Android SDK [15]. Dovoluje p ístup k souborovému systému za ízení a obsahuje jednoduchý p íkazový ádek, který podporuje základní p íkazy unixového p íkazového ádku. Vhodný je nap íklad pro sledování systémových log za ízení. Do emulátoru m ºeme pomocí p íkazu adb push kopírovat soubory nebo je naopak pomocí adb pull kopírovat ze za ízení.

19 2 ZÁKLAD PRO TVORBU APLIKACÍ Základní prvky prost edí Systém Android byl navrºen tak, aby umoºnil uºivateli v maximální mí e upravovat prost edí systému. Uºivatel m ºe nahrazovat dodávané aplikace vlastními, které mu vyhovují a tyto aplikace jsou dokonale propojeny se stávajícím systémem 14. Vlastní aplikace jsou totiº rozd leny do odd lených ástí tzv. aktivit. Ke kaºdé aktivit je p i azen zpravidla jediný pohled, který je v podstat samostatnou obrazovkou grackého uºivatelského rozhraní. Mezi aktivitami se postupn p echází p edáním informací jiné aktivit ve form zprávy - tzv. intentu. N které aktivity jsou vyvolány na základ typu intentu, voláním z jiné aplikace nebo p ímo vznikem n jaké události v systému. Intent v podstat íká, co chceme ud lat a systém se nám sám p izp sobí volbou správné akce a spu²t ním správné aktivity. Není v²ak aplikací pokud není dat, které by zpracovávaly. Data nejsou v systému organizována svým umíst ním v adresá ové struktu e souborového systému 15, ale svým ú elem. Mohou být r zných typ - obrázky, video, text, webová stránka. Soubory na souborovém systému mají zpravidla sv j ú el i formát ur en ástí svého názvu (p íponou souboru). Jelikoº data nemusí být uloºena jen v souborech, ale mohou to být t eba i zdroje z internetu, byly práv z protokol pouºívaných na internetu do v t²iny dne²ních systém p evzaty MIME nebo také Conent typy. Jsou speci- kovány typem a podtypem, zapisují se typ/podtyp. Typ ur uje ú el daných dat, podtyp pak jejich konkrétní formát. Pro ilustraci máme nap íklad MIME typy obrázk image/gif, image/jpeg, zvuk audio/ogg, audio/vnd.wave, textu text /html, text/javascript. Kaºdá aplikace m ºe specikovat, které MIME typy dokáºe obsluhovat. Stejn tak je tomu u Androidu. K dat m a jiným prost edk m (zejména k poskytovatel m obsahu) v systému je moºné p istupovat pomocí URI (Uniform Resource Identier). URI m ºe být ve tvaru URL nebo URN, p ípadn kombinací obou. URL (Uniform Resource Locator) je cesta ur ující umíst ní prost edku a URN (Uniform Resource Name) je jméno, které jednozna n identikuje prost edek. S URL se nej ast ji setkáme na webu a to ve form webové adresy, nap. V Androidu m ºe být URL poskytovatele prost edku (viz. kapitola 2.3.3), nap. specikace umíst ní obrázku na pam ové kart content://media/external/images/media/3. URN m ºe být na Androidu t eba pro telefonní íslo tel: ƒást URI p ed dvojte kou 14 záleºí samoz ejm na vývojá i konkrétní aplikace, jak dokáºe t chto moºností vyuºít 15 pochopiteln data jsou uloºena ve form soubor v souborovém systému, ale z hlediska uºivatele je tato struktura skrytá

20 2 ZÁKLAD PRO TVORBU APLIKACÍ 12 se nazývá URI schéma a specikuje zp sob p ístupu k danému prost edku nebo typ prost edku Aplikace, aktivita, sluºba a p ijíma (Application, Activity, Service and BroadcastReceiver) Aplikace je soubor komponent - aktivit, sluºeb a p ijíma a m ºe být realizována jako vlastní t ída zd d ná podle android.app.application. Jednotlivé komponenty aplikace jsou pak denovány v manifestu (kapitola 2.3.4). Aktivity jsou samostatné ásti aplikace e²ící vlastní funk ní logiku aplikace. Aktivity jsou d d né z t ídy android.app.activity. Procesy b ºící ve virtuálním stroji pak mají p i azené jednotlivé aktivity aplikace. Kaºdá aktivita v systému se ukládá na zásobník aktivit (Acitivity Stack). Aktuální aktivita na pop edí je na vrcholu tohoto zásobníku, naopak stisknutí klávesy Zp t na telefonu odebere sou asnou aktivitu z vrcholu zásobníku. Systém si zcela sám ídí b h proces, ty jsou v rámci úspory pam ti v p ípad nejvy²²í nouze násiln ukon eny (zabity, pomocí low-memory killer - viz. kapitola 1.1). Prioritizace zabíjení proces je taková, ºe nejprve jsou zabity procesy, které mají aktivity na pozadí (nejsou na vrcholu zásobníku), aº poté jdou na adu dal²í procesy (pokud je dostatek pam ti, tak k tomu dochází jen minimáln ). V Androidu není garantován b h ºádného procesu. Kaºdá aktivita má sv j ºivotní cyklus (viz. obrázek 6), který prochází jednotlivými stavy a volá podle toho p íslu²né události [19]: ˆ oncreate(bundle) - Volá se jednou, kdyº je aktivita poprvé spu²t na. Je vhodné zde inicializovat aktivitu, nastavit pohled a zaregistrovat obsluhy událostí ˆ onstart() - Volá se vºdy p ed zobrazením aktivity uºivateli. ˆ onresume() - Volá se tehdy, kdy je aktivita p ipravena reagovat na vstupy od uºivatele. ˆ onpause() - Volá se kdyº je aktivita p esunuta do pozadí. Je to vhodné a také poslední místo k uloºení r zných perzistentních dat. Po této události je jiº proces, jehoº je aktivita sou ástí moºné zabít a v p ípad, ºe nebudou tato data uloºena, tak budou ztracena. Pro uloºení dat do speciálního objektu Bundle je moºno pouºít událost onsaveinstancestate(bundle), podobn pak k obnovení onrestoreinstance(bundle)

21 2 ZÁKLAD PRO TVORBU APLIKACÍ 13 Obrázek 6: šivotní cyklus aktivity [1]

22 2 ZÁKLAD PRO TVORBU APLIKACÍ 14 ˆ onstop() - Volá se v p ípad, ºe aplikace není uº vid t v p epína i úloh. ˆ onrestart() - Volá se tehdy, kdyº se aktivita uºivateli má znovu zobrazit. ˆ ondestroy() - Volá se v p ípad, ºe je aktivita zru²ena Aktivity v²ak nejsou ur eny k dlouhodobým operacím a výpo t m, protoºe jakékoli volání blokuje uºivatelské rozhraní. Pokud chceme vytvo it aplikaci, která na pozadí vykonává n jakou innost (nap. pravidelné stahování po²ty) musíme sáhnout po pouºití vláken. Zp sob je tém stejný jako v klasické Jav, vyuºívá se t ídy java.lang.thread a rozhraní java.lang.runnable. Jediný rozdíl je v tom, ºe zevnit jiného vlákna nesmíme p ímo p istupovat ke grackému rozhraní, které není vláknov bezpe né. K tomu lze pouºít t ídy android.os.handler a zaslat objekt s rozhraním java.lang.runnable do hlavního vlákna a tam se kód vykoná spu²t ním metody run(). Pro ilustraci pouºití vláken jsem vytvo il vzorovou aktivitu PrikladVlakna(viz. p íloha A). Pokud chceme provád t na pozadí n jakou trvalej²í innost (nap. stahování souboru nebo p ehrávání hudby), m ºeme vyuºít sluºeb. Sluºby jsou d d ny z android.app.service. Sluºba nemá p i azené gracké uºivatelské rozhraní, m ºe aktivovat pouze systém notikací. Pravd podobnost, ºe bude zabit proces obsahující sluºbu je podstatn men²í neº v p ípad aktivity na pozadí. S okolím sluºby komunikují zpravidla pomocí mezi-procesové komunikace (IPC), která je v Androidu realizována speciálním ovlada em binder v linuxovém jádru (viz. kapitola 1.1). V aplika ním frameworku se vyuºívá rozhraní android.os.ibinder. Speciální komponentou je p ijíma, který je odvozený od t ídy android.app.broadcastreceiver a slouºí k jednorázové reakci na n které události, které vznikají v systému. Pod takovými událostmi si m ºeme p edstavit p íchozí SMS nebo telefonní hovor. Proces zpracovávající p ijíma je platný jen po dobu vykonávání metody onreceive(), proto nesmíme v této metod vytvá et ºádné v ci týkající se daného procesu, hlavn ne vlákna, která b ºí na pozadí. Zpravidla se pouºívá pouze k vytvo ení systémové notikace nebo spu²t ní sluºby Intenty a intentové ltry (Intent) Jak uº je zmín no v úvodu kapitoly 2 jsou aplikace rozd leny na jednotlivé komponenty - aktivity, sluºby a p ijíma e, mezi kterými se p echází pomocí p edávání zprávy tzv. intentu. Uºivatelsky e eno z jedné aktivity vyvoláváme intent, ve kterém íkáme co

23 2 ZÁKLAD PRO TVORBU APLIKACÍ 15 Obrázek 7: Vztahy aktivit a intent

24 2 ZÁKLAD PRO TVORBU APLIKACÍ 16 chceme d lat a p ípadn jak to chceme ud lat. Vztahy intent a komponent dob e vystihuje obrázek 7. V²e nyní ukáºi pouze na aktivitách, v p ípad jiných komponent je situace jen mírn odli²ná. V rámci jedné aplikace m ºeme vyvolávat aktivity pomocí tzv. explicitního intentu, ten je specikován komponentou, která ho volá a t ídou komponenty, kterou chceme volat. íkáme p esn, jak chceme danou innost ud lat. //explicitní intent Intent dodruheintent=new Intent(PrikladIntenty.this, DruhaAktivita.class); startactivityforresult(dodruheintent, REQUEST_ZE_DRUHE); V tomto p ípad je o ekávaný návrat n jakého výsledku z dané aktivity (velmi astý poºadavek). Pokud je poté pot eba v aktivit reagovat na návrat z volané aktivity pouºíváme události onactivityresult(): protected void onactivityresult(int requestcode, int } resultcode, Intent data) { super.onactivityresult(requestcode, resultcode, data); if (requestcode == REQUEST_ZE_DRUHE && resultcode==result_ok } ) { //do something Mnohem zajímav j²í je pouºití implicitních intent, kde nespecikujeme jak danou innost ud lat, ale necháváme to rozhodnout systém. Implicitní intenty nejsou specikovány t ídou aktivity, ale dodate nými parametry, mezi které pat í [1]: ˆ akce ( action) - Jednotlivé akce jsou denovány svými konstantami na t íd Intent a ur ují co má intent vyvolat za akci. Mezi asto pouºívané akce pat í: ACTION_VIEW - ukaº uºivateli data specikovaná v URI ACTION_EDIT - umoºni upravit data specikovaná v URI ACTION_PICK - nabídni výb r z dat uloºených na dané URI ACTION_DIAL - chci vytá et íslo uloºené v URI ˆ MIME typ - ur uje typ poºadovaných dat, nap. image/png, text/plain, atd.

25 2 ZÁKLAD PRO TVORBU APLIKACÍ 17 ˆ URI schéma - specikuje zp sob p ístupu k danému prost edku nebo typ prost edku ˆ kategorie (category) - dodate ná informace o tom, jak mají být data nebo prost edky zpracovány, má op t denované konstanty, nap.: CATEGORY_BROWSABLE - aktivita m ºe zpracovávat odkazy (nap. na webové adresy nebo mailové adresy) CATEGORY_GADGET - aktivita m ºe být pouºita jako gadget (speciální forma aktivity zobrazující se na pracovní plo²e) CATEGORY_PREFERENCE - aktivita slouºí k nastavení p edvoleb programu (preferencí) Parametry implicitních intent lze denovat v aplikaci zcela vlastní, ale pro vzájemnou kompatibilitu aplikací je doporu ené pouºít ty, co jsou uº v aplika ním frameworku p ipravené. Aby aktivita mohla reagovat na implicitní intenty je pot eba je zaregistrovat pomocí intentových ltr. Intentový ltr pro aktivitu specikujeme v manifestu (více v kapitole 2.3.4). Pokud chceme zjistit, jak fungují jednotlivé aplikace z hlediska posílání intent, dob e nám k tomu poslouºí perspektiva DDMS v Eclipse (viz. kapitola 2.2.2). V okn LogC at se v²echny intenty p ehledn vypisují: Starting activity: Intent { act=android.intent.action.main cat =[android.intent.category.home] flg=0x cmp=com. android.launcher/.launcher } Starting activity: Intent { act=android.intent.action.main cat =[android.intent.category.launcher] flg=0x cmp=com. android.contacts/.dialtactscontactsentryactivity } Starting activity: Intent { act=android.intent.action.insert dat=content://contacts/people cmp=com.android.contacts/. EditContactActivity } Starting activity: Intent { act=android.intent.action.sendto dat=sms:255 cmp=com.android.mms/.ui.composemessageactivity } V tomto p íkladu jsem spustil aplikaci na správu kontakt, vytvo il nový kontakt a pak spustil odesílání SMS na tento kontakt. M ºete si v²imnout pouºitého URI content://contacts/people, které ur uje umíst ní poskytovatele obsahu seznamu kontakt a sms:255, které je pouºito k vyvolání aplikace na odeslání SMS.

26 2 ZÁKLAD PRO TVORBU APLIKACÍ 18 Pro názorn j²í vyuºití intentových ltr jsem zpracoval v PrikladIntenty aktivitu, která naslouchá na intenty prohlíºení webových odkaz p es protokol Jde o takový malý jednoduchý webový prohlíºe. V manifestu je ltr popsán takto: <activity android:name=".tretiaktivita"> <intent-filter> <action android:name="android.intent.action.view" /> <category android:name="android.intent.category.default" / > <category android:name="android.intent.category.browsable" /> <data android:scheme="http"/> </intent-filter> </activity> ƒili pokud v n jaké libovolné aplikaci volám p íslu²ný implicitní intent, m ºe být systémem vyhodnoceno, ºe více neº jedna z aplikací je schopna zpracovávat daný intent. V tomto p ípad b ºn dodávaný webový prohlíºe a m j mini-prohlíºe z PrikladIntenty. Na obrázku 8 je vid t, ºe pokud systém sám neví jak dále pokra ovat a jelikoº existuje více moºností vyhovujících intentu, zeptá se uºivatele dialogem. Uºivatel má moºnost zapamatovat si asociaci do budoucna. Poté se uº systém ptát nebude, dokud toto nastavení nezru²íme v Nastavení > Aplikace > Správa aplikací > /daná aplikace/ a tla ítkem Vymazat výchozí nastavení. Pokud má v t²ina aplikací správn denované intentové ltry a vyvolává implicitní intenty místo explicitních, je zp sob nahrazení libovolné aplikace vlastní alternativou otázkou n kolika ádek v manifestu. Pokud budete vyvíjet vlastní aplikace, je vhodné v dokumentaci uvád t jaké intentové ltry aplikace pouºívá Poskytovatel obsahu (Content Provider) Poskytovatel obsahu je datové rozhraní pro získávání a zaznamenávání dat dostupné libovolným aplikacím v systému. Funguje podobným zp sobem jako klasická databáze, jelikoº je to asto jen mezivrstva, která propojuje poskytovatele obsahu s SQLite databází. P ístup k tomuto problému se velmi podobá webovým sluºbám a RESTu [9]. K obsahu poskytovanému poskytovatelem obsahu se m ºeme dostat p es známé URI se schématem content://, které je zpravidla ve tvaru content://<jméno poskytovatele>/<cesta ke zdroji>, nap. content://sms/inbox 16, pro 16 nesmíme zapomenout na moºná omezení p ístupovými právy

27 2 ZÁKLAD PRO TVORBU APLIKACÍ 19 Obrázek 8: Vyvolání implicitního intentu pro prohlíºení odkazu celou tabulku (v²echny SMS ve sloºce Inbox) a content://sms/inbox/1 uº odkazuje na konkrétní SMS s id=1. URI lze stav t p ímo p es metody na t íd android.net.uri: Uri smsinbox=uri.parse("content://sms/inbox"); Uri smsmessage1=uri.withappendedid(smsinbox,1); V aktivit m ºeme p istupovat k dat m poskytovatele obsahu p es objekt t ídy android.content.contentresolver. Na aktivit ho získáme snadno zavoláním metody getcontentresolver(). Na n m uº m ºeme spou²t t metody pro zaloºení, tení, aktualizaci a smazání (CRUD), jsou to insert(), query(), update () a delete(). ƒteme p es objekty zvané kurzory s rozhraním android.content.cursor. Ty mají denované metody pro zji²t ní po tu ádk a sloupc - getcount() a getcolumncount(), pak také metody pro zji²t ní pole názv sloupc getcolumnnames(). A i samotné metody pro získání dat z ur itého

28 2 ZÁKLAD PRO TVORBU APLIKACÍ 20 sloupce ur eného svým po adím, nap. getstring(int). Uri smsuri=uri.withappendedpath(uri.parse("content://sms"), " inbox"); Cursor c=activity.getcontentresolver().query(smsuri, null, null, null, null); //nejprve se kurzor musí "převinout" if (c.movetofirst()!=false) ( } while(c.movetonext()) } String value=c.getstring[1]; //... Jako druhý parametr metody query(), lze omezit sloupce, které budou ve výb ru. Pokud zadáme do n jakého parametru null, tak to znamená, ºe se daná podmínka neuplat uje. Jako t etí parametr lze zadat WHERE podmínku (SQL), jako tvrtý pak pole parametr, které se po popo ad mapují do této podmínky (místa kam se mapují jsou ozna ena otazníkem). Jako poslední parametr se zadává ORDER. P íklad, jak m ºe takový dotaz vypadat: Cursor c=getcontentresolver().query(smsuri, null, "address LIKE?", new String[]{"%mBank%"},"_id DESC"); Na aktivit existuje p ímo metoda managedquery() se stejnými parametry jako query() na objektu typu ContentResolver, ale tato metoda zajistí automatickou aktualizaci dat p i obnovení aktivity z pozastavených stav a tak zna n zjednodu²uje implementaci. Ukládání dat ukáºi jen na metod insert(), protoºe update() se chová podobn jen má navíc parametry pro WHERE podmínku. Nejprve je nutné vytvo it objekt t ídy android.content.contentvalues a do n j vloºit p íslu²né dvojice jméno sloupce a hodnota, pak je uº moºné zavolat insert(). ContentValues vals=new ContentValues(); vals.put("address","neznámá ctitelka"); vals.put("body","miluji tě!"); Uri newitem=activity.getcontentresolver().insert(smsuri,vals); Vrácené URI pak bude ukazovat na novou poloºku, ve tvaru content://< jméno poskytovatele>/<cesta ke zdroji>/<nové id>. Na CD (p íloha A) je k poskytovatel m obsahu vytvo en p íklad Priklad- Provideru s aktivitou, která zobrazí v²echny p ijaté SMS v prvku ListView.

29 2 ZÁKLAD PRO TVORBU APLIKACÍ 21 Obrázek 9: Povolení p ístupových práv p i instalaci Systém poskytuje mnoºství vlastních poskytovatel a ty jsou dostupné z balí ku android.providers.*. Poskytovatele konkrétních aplikací m ºeme op t najít v manifestu, pro inspiraci op t doporu uji nahlédnout do exportu manifest uloºených na CD (p íloha A). Konkrétn v p ípad SMS a MMS úloºi²t není denovaný ºádný p esný zdroj, ale v t²ina aplikací spoléhá na úloºi²t SMS aplikace dodávané v rámci AOSP, v p ípad ºe nebude tato aplikace v systému dostupná, nebude dostupný ani tento poskytovatel obsahu. V rámci vlastních aplikací m ºete vytvo it vlastního poskytovatele obsahu, roz²í ením abstraktní t ídy android.content.contentprovider a implementací p íslu²ných metod. Vytvo ený poskytovatel obsahu musí být op t zapsán do manifestu, aby o n m v d l celý systém Manifest a bezpe nostní omezení aplikací Manifest je popisný soubor aplikace ve formátu XML. Obsahuje základní informace o aplikaci jako název, verze nebo ikona. Je v n m také zaznamenáno ze kterých komponent se aplikace skládá, jaké jsou jejich intentové ltry. V p íloze B se m ºete seznámit s ukázkou manifestu aplikace Mapy Google dodávané v rámci AOSP. Jelikoº má Android systém oprávn ní, která omezují p ístup k n kterým funkcím telefonu pouze autorizovaným aplikacím, obsahuje manifest seznam pouºitých oprávn ní.

30 2 ZÁKLAD PRO TVORBU APLIKACÍ 22 P i instalaci aplikace se p e tou tato oprávn ní a jsou zobrazena uºivateli (viz. obrázek 9), který je musí schválit, jinak se aplikace nenainstaluje. Tento systém chrání uºivatele p ed potenciáln nebezpe nou aplikací. Lze si totiº p edstavit aplikaci, která kaºdou sekundu odesílá SMSku a tak uºivateli p ichystá nep íjemné p ekvapení v podob obrovských ástek na faktu e. Systémem oprávn ní jsou chrán ny v²echny takto kritické ásti telefonu jako odesílání zpráv, p ístup k internetu, p ístup ke kontakt m, sledování polohy p es GPS, apod. Pokud ve vlastní aplikaci zapomenete uvést oprávn ní v manifestu, tak v p ípad ºe se aplikace pokusí pouºít chrán ného p ístupu, tak skon í vyhozením výjimky java.lang.securityexception. V manifestu je také moºné denovat vlastní oprávn ní, která bude va²e aplikace pouºívat vzhledem k aplikacím ostatním. Sou ástí vývojového prost edí pro Android v Eclipse je p ehledné gracké rozhraní pro editaci manifestu. Na p iloºeném CD (p íloha A) naleznete exporty v²ech XML pouºitých v AOSP aplikacích, tedy i manifest. Pouºitý nástroj Axml2xml [20] je také sou ástí CD. Manifesty jsou zejména uºite né pro zji²t ní intent ltr pouºívaných v aplikacích a pro inspiraci tvorby vlastních. 2.4 Nasazení aplikace a Android Market Hotovou a odlad nou aplikaci je moºné p eloºit do instalovatelného balí ku s p íponou *.apk 17. Ve vývojovém prost edí pro Android v Eclipse, tak m ºeme u init z kontextové nabídky na projektu volbou Android Tools > Export Signed Application Package... V prvním kroku vyplníme jen název balí ku. Ve druhém kroku musíme zadat úloºi²t klí, kde bude vygenerován unikátní klí autora, který funguje podobn jako elektronický podpis. Díky tomu v²echny dal²í vytvo ené aplikace budou podepsány va²ím klí em a bude jasn deklarováno, kdo aplikaci vytvo il. Proto je nezbytné bezpe n klí uchovat a opat it ho silným heslem. Aplikace je moºné distribuovat p ímo ve form *.apk balí ku. Android v²ak nabízí mnohem zajímav j²í zp sob distribuce a to je distribuce p es Android Market. Toto centralizované úloºi²t aplikací provozuje spole nost Google. Je moºno zde distribuovat aplikace zdarma nebo placené, nicmén v dob psaní této práce není moºno v ƒeské republice placené aplikace prodávat, ba dokonce ani nakupovat. 17 jde o ZIP soubor, který obsahuje strukturu zkompilované aplikace spolu s manifestem

31 2 ZÁKLAD PRO TVORBU APLIKACÍ Specika vývoje mobilních aplikací A koliv je mobilní platforma Android kompatibilní z hlediska vývoje s e²ením Java SE na osobních po íta ích, je pot ebné do vyvíjených aplikací promítnout omezení dané mobilním hardware. Proto n které best practices 18 z klasické Javy zde není vhodné pouºívat a oproti tomu je doporu ené pouºívat jiné, které zde popí²i [1]. V kapitole jsem uº zmínil doporu ení nepouºívat hlavní vlákno aktivity k asov náro ným výpo t m. Nedodrºení tohoto pravidla povede k zablokování uºivatelského rozhraní a zobrazení dialogu s výstrahou, ºe daná aplikace neodpovídá. Pro aktivity je tato doba 5 sekund a pro p ijíma e je tato doba 10 sekund. Pro rozsáhlej²í výpo ty tedy vºdy pouºívejte vlákna. Aplikaci vºdy rozd lujeme na aktivity, tak aby jeden pohled (obrazovka) odpovídal jedné aktivit. Není doporu ené m nit pohledy v rámci jedné aktivity. V aktivitách nesmíme zapomínat na ukládání stavu aktivity pomocí onsaveinstancestate(bundle). Pokud neuloºíme stav p i p esunu jiné aktivity na pop edí, riskujeme zabití procesu dané aktivity a ztráty zadaných dat. Musíme si uv domit, ºe taková aktivace na pop edí m ºe prob hnout nap íklad kdykoli p i p íchozím hovoru. Uºivatelské rozhraní je vhodné p izp sobit tak, aby mohlo být ovládané bez hardwarové klávesnice, ba dokonce bez dotykového displeje. V p ípad sí ových aplikací je nutné po ítat s velkým zpoºd ním v GSM síti p i p ipojení p es GPRS (aº jednotky sekund) a EDGE (obvykle ms), ani v 3G sítích není situace výrazn lep²í oproti klasickému pevnému p ipojení realizovanému nap. p es wi-, p ipojenou ke poskytovateli internetu p es optické i kabelové sít. Datová p ipojení jsou také velmi náro ná na spot ebu, proto by jejich pouºití m la p edcházet úvaha, zda a jak asto je nutné je vyuºívat. Dal²í doporu ení se týkají vlastní platformy z hlediska výkonu. Není dobré naduºívat vytvá ení nových objekt, je vhodné znovu-pouºívat objekt stávajících uº jednou alokovaných, p ípadn ve velké mí e pouºívat singleton 19. V maximální mí e je vhodné pouºívat jednoduchých datových typ, nikoli t ch objektových ( ili více int, mén Integer). Uvnit t ídy není vhodné pouºívat getter a setter (metod k nastavení instan ních prom nných), ale naopak pouºívat p ímo p ístupu k jednotlivým prom nným. Je vhodné maximáln specikovat datové typy a minimáln pouºívat rozhraní a t íd p edk, pokud denujeme datový typ, výrazn tak sniºujeme reºii spo- 18 doporu ené postupy 19 t ída, ke které lze vytvo it pouze jedinou instanci v celé aplikaci

32 2 ZÁKLAD PRO TVORBU APLIKACÍ 24 jenou s vyhodnocením virtuálních metod na objektu (to jde p ímo proti princip m, na které jsme zvyklí z klasického vývoje). Není vhodné pouºívat vý tového typu, protoºe p i jeho vytvo ení alokujeme daleko více pam ti, místo n j je vhodné pouºít konstant. Konstanty vºdy deklarujeme jako static a final, op t tak dosáhneme zvý²ení výkonu. Z hlediska výkonu je také problematický datový typ float a pokud netvo íme matematicky orientované aplikace, je vhodné se mu vyhnout a pouºívat pouze celá ísla.

33 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) 25 3 Návrh grackého uºivatelského rozhraní (GUI) Gracké uºivatelské rozhraní Androidu je od po átku navrºené pro mobilní za ízení. Umoº uje uºivateli efektivn ovládat za ízení pomocí dotykového displeje. V Androidu není pouºita ºádná stávající Javová implementace uºivatelského rozhraní jako AWT 20 nebo Swing, framework nabízí zcela vlastní pojetí. Je jednoduché a snadno pochopitelné. GUI lze vytvo it zcela ru n pomocí kódu nebo lze vyuºít XML soubor rozvrºení (layout ). Ve²kerá nastavení a parametry grackého uºivatelského rozhraní bývají uloºeny ve zdrojích (resources). Základním prvkem GUI je pohled (View), který je reprezentovaný t ídou android.view.view a od n j jsou odvozeny ve²keré prvky grackého uºivatelského rozhraní. Existuje jako v²echny gracké prvky v n jakém kontextu, kterým je ve v t²in p ípad n jaká aktivita. Bu jde uº o vlastní prvky nebo skupiny prvk, které jsou charakteristické tím, ºe do nich lze vkládat dal²í prvky a díky tomu má celé uºivatelské rozhraní strukturovanou podobu. 3.1 Zdroje (Resources) a jejich pouºití v kódu Zdroje jsou data p ibalená k aplikaci, ur ená pouze pro tení a jsou d leºitá pro provoz aplikace. V projektu Eclipse jsou uloºena v adresá i res. Typy zdroj m ºete vid t v tabulce 2. Zdroje se p eváºn ukládají ve formátu XML. Tato XML se, kv li zvý²ení výkonu a zmen²ení velikosti, p ekládají p ímo do binární podoby [9]. Op t zd raz uji, ºe Android se snaºí být maximáln p ístupný a modikovatelný. Proto v Androidu existuje n co jako alternativní zdroje [1]. Adresá e lze opat it p íponami, které specikují pouºití jiných zdroj neº t ch výchozích, v ur itých situacích jako je zm na hardwarové kongurace p ístroje nebo zm na jazyka. Typicky se toho vyuºívá u et zc, ale je moºné toho vyuºít u libovolných zdroj. Gracké rozhraní v Eclipse umoº uje pom rn rychle vytvá et takové alternativní zdroje P íklady ukazuje tabulka 3. V XML souborech lze odkazovat na hodnoty jiného zdroje pomocí V Javovém kódu je pro zdroje v daném balí ku vytvo ena automaticky vývojovým prost edím t ída R, která obsahuje konstanty s identikátory jednotlivých zdroj. K identikátor m lze pak p istupovat p es 20 existuje nezávislá implementace AWT pro Android na

34 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) 26 Typ zdroje Umíst ní Popis zdroje Hierarchická reprezentace umíst ní grackých prvk Rozvrºení (Layout) /res/layout/*.xml uvnit jednotlivých rozvrºení a kontejner, dostupné jako R.layout.* Identikátory prvk GUI, Id /res/values/*.xml dostupná jako R.id.* Denice nabídek, dostupné Nabídky (Menu) /res/menu/*.xml pak z R.menu.* Reprezentace barev, Barvy (Color) /res/values/*.xml dostupné jako R.color.* Texty a p eklady GUI do et zce (String) /res/values/*.xml r zných jazyk, dostupné Rozm ry (Dimension) Obrázky Volitelné XML soubory Volitelné jiné soubory Dal²í soubory /res/values/*.xml /res/drawable/* /res/xml/*.xml /res/raw/* /assets/* Tabulka 2: Typy zdroj jako R.string.* Rozm ry prvk, dostupné jako R.dimen.* Ikony a obrázky, dostupné jako R.drawable.* R zné vlastní XML soubory, dostupné jako R.xml.* R zné vlastní libovolné soubory, dostupné jako R.raw.* Dal²í soubory, lze je íst p es android.content.res. AssetManager balíček.r.typ.jméno. K získání vlastního zdroje slouºí metody na t íd android.content.res.resources, jejíº instance se na aktivit získá p es metodu getresources(). Zdroje rozvrºení a zdroje id proberu detailn v kapitole 3.2. et zcové zdroje reprezentují v bec ve²keré texty, které v aplikaci pouºíváme. Je pravda, ºe m ºeme zapsat text p ímo natvrdo v rozvrºení nebo v kódu, ale p i²li bychom o moºnost pouºít alternativních zdroj pro jiné jazyky. Proto by v²echny texty m ly být zapsány v et zcových zdrojích: <resources> <string name="hello">ahoj světe!</string> </resources>

35 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) 27 Cesta values-fr layout-land drawable-zh-rtw menu-mcc231-keysexposed Alternativní zdroj Hodnoty pro systém kde je nastavený francouzský jazyk Rozvrºení pro telefon oto ený v reºimu krajina (del²í hranou dol ) Obrázky pro systém s nastaveným jazykem taiwanská ín²tina Nabídky pro telefony s vysunutou klávesnicí a p ihlá²ené do sít operátora na Slovensku Tabulka 3: P íklady alternativních zdroj et zec ze zdroje pak získáme takto: String textik = (String)activity.getString(R.string.hello); //Barvy S dal²ími zdroji se v kódu pracuje velice podobn, pro ilustraci n kolik p íklad : int cervena=activity.getresources().getcolor(r.color.red); //Rozměry float delka=activity.getresources().getdimension(r.dimen. my_width). //Obrázky BitmapDrawable d=activity.getresources().getdrawable(r. drawable.my_image); 3.2 Rozvrºení (Layout) Rozvrºení (layout) specikuje vlastní umíst ní grackých prvk na obrazovce, v XML souboru jsou specikovány jednotlivými tagy jednotlivé pohledy (View), ili gracké prvky odvozené od t ídy android.view.view. Pro návrh rozvrºení je ve vývojovém prost edí Androidu pro Eclipse k dispozici gracký návrhá. Rozvrºení lze ve form zdroje specikovat XML souborem: <LinearLayout xmlns:android=" res/android" android:orientation="vertical" android:layout_width=" fill_parent"

36 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) 28 android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" /hello" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" butok" </LinearLayout> V rozvrºení m ºe být libovolný prvek GUI identikován jednozna ným identi- kátorem a to je jeho android:id. Pokud není denováno p edem ve zdroji, tak je moºné ho nechat automaticky generovat referencí ve K prvku lze pak p istupovat v aktivit jednoduchým zp sobem, nap íklad takto pro tla ítko: Button mybutton = (Button)activity.findViewById(R.id.butOk); Dále mají pochopiteln gracké prvky spoustu r zných vlastností, které ur ují jak se bude prvek chovat. V dal²ím textu jim budu íkat pouze vlastnosti. V²echna rozvrºení jsou odvozena od t ídy skupiny prvk android.view.viewgroup, která umoº uje do sebe rozvrºení a dal²í prvky zano ovat. Pro prvky do n j vloºené a chování jejich rozm r a umíst ní se e²í p es tzv. vlastnosti rozvrºení, ty jsou typické svojí p edponou layout_ a kaºdý prvek uloºený v rozvrºení má svou sadu t chto vlastností. Mezi klí ové vlastnosti rozvrºení ur ující rozm ry prvku pat í android:layout_width pro ²í ku prvku a android:layout_height pro vý²ku prvku. Ty mohou nabývat hodnot wrap_content, kdy se prvek chová tak, ºe se snaºí svými rozm ry maximáln obemknout sv j obsah nebo fill_parent, který naopak roztahuje prvek na velikost své nad azené skupiny prvk. Pokud bychom cht li pevnou ²í ku, i vý²ku, tak je moºné toto nastavit p es vlastnosti android:width a android:height, ale doporu uji se tomu pokud moºno vyhnout, protoºe to sniºuje pouºitelnost na za ízeních s rozdílnými rozli²eními displeje. Pro správné nastavení velikosti jednotlivých prvk je d leºité se je²t seznámit s jednotkami pouºitými k specikování rozm r [1]: ˆ px (pixely) - odpovídají p esn bod m na obrazovce, jejich maximální po et je dán rozli²ením, nezávisí na fyzické velikosti obrazovky ˆ in (palce) - anglosaská jednotka délky, odpovídá 2,54cm, rozm ry se po ítají vzhledem k fyzické velikosti obrazovky

37 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) 29 ˆ mm (milimetry) - rozm ry se po ítají vzhledem k fyzické velikosti obrazovky ˆ pt (body) - typogracká jednotka, 1/72 palce, vzhledem k fyzické velikosti obrazovky ˆ dp (pixely nezávislé na hustot bod ) - abstraktní jednotka zaloºená na hustot bod na obrazovce, relativn k 160dpi (body na palec) obrazovce ˆ sp (pom rov nezávislé pixely) - podobné jako dp, ale m ní se s velikostí font nastavených uºivatelem, vhodné ke specikaci velikosti písma Rozm ry prvk je vhodné denovat ve zdrojích typu rozm ry. <resources> <dimen name="one_pixel">1px</dimen> <dimen name="double_density">2dp</dimen> <dimen name="sixteen_sp">16sp</dimen> </resources> Existuje celkem p t r zných typ rozvrºení, popí²u postupn kaºdé z nich (uvádím v²echny plným názvem Javové t ídy, ve zdroji sta í zápis jednoduchý). ˆ android.widget.linearlayout - Prvky vloºené do tohoto rozvrºení se skládají vedle sebe vertikáln nebo horizontáln na základ hodnoty vlastnosti android:orientation. Pro prvky je moºné pouºít vlastnosti rozvrºení android:layout_gravity, které ur uje zarovnání prvku v rozvrºení, vhodné je ho pouºít nap íklad k vycentrování prvku. Není radno zam ovat tuto vlastnost rozvrºení s vlastností android:gravity, ta se týká samotného obsahu prvku a naopak zarovnává nap íklad text v tla ítku. Dal²í vlastností rozvrºení je android:layout_weight, která m ºe nabývat 0 nebo 1. Pokud je u n kterého prvku v rozvrºení 1 a u ostatních 0, tak má tento prvek rozhodující právo se roztáhnout na zbytek rozvrºení, zatímco ty s 0 z stanou stejn velké. ˆ android.widget.tablelayout - Je roz²í enou variantou p edchozího rozvrºení a chová se jako tabulka, m ºeme do n j vkládat ádky pomocí android.widget.tablerow a tak rozd lovat prostor vertikáln a do ádk pak umis ujeme jednotlivé prvky, které tvo í sloupce. Mezi ádky je vazba na rozm ry jednotlivých sloupc, takºe prvky ve stejném sloupci mají stejnou ²í ku ve v²ech ádcích. Prvky nereagují na hodnotu android:layout_width nastavenou na wrap_content. Aby rozvrºení v d lo, které sloupce je moºno roztahovat v p ípad pot eby, m ºeme tak specikovat pomocí

38 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) 30 android:stretchcolumns ísla sloupc odd lená árkou (za ínající 0), naopak pomocí android:shrinkcolumns ty které je moºné zmen²ovat. ˆ android.widget.relativelayout - Prvky se zde umís ují tak, aby byly umíst ny na ur itém míst vzhledem k jinému prvku k rozvrºení nebo vzhledem k rozvrºení samotnému. ˆ android.widget.absolutelayout - Prvky se umis ují na p esné pozice s ohledem na pozice android:layout_x a android:layout_y relativn vzhledem k umíst ní rozvrºení. Toto rozvrºení je doporu uji pouºívat jen ve specických p ípadech, jako v t ch, kdy pozice a rozm ry prvk po ítáme sami ru n, jinak se vystavujete riziku toho, ºe vám rozvrºení bude vystupovat mimo obrazovku nebo se budou prvky nep irozen p ekrývat. ˆ android.widget.framelayout - Je optimalizován na aktuální zobrazení jediného prvku. V²echny vloºené prvky se umís ují vzhledem k rozloºení, takºe se budou p ekrývat. Vhodným pouºitím tohoto layoutu je p ípad, kdy máme n kolik prvk v tomto jednom rozli²ení a chceme aby byl vid t jen jeden z prvk. 3.3 Prvky GUI V této kapitole proberu v²echny základní prvky grackého uºivatelského rozhraní, které jsou v Androidu k dispozici. U t ch nejd leºit j²ích i v p íkladech p iblíºím r zné zp soby pouºití Text (TextView) a textové pole (EditText) Text je jednoduchý prvek, který je t ídy android.widget.textview a slouºí jako textový popisek. Tento popisek je uloºen ve vlastnosti android:text a lze mu nastavit mj. barvu, velikost a font. Textové pole slouºí ke vstupu textových hodnot, jeho t ída je android.widget.edittext. D leºitou vlastností je android:intputtype, který specikuje jaké znaky je moºné do polí ka psát, p ípadn zda má být pouºito automatické dopl ování a dal²í. Oba prvky je moºné vid t na obrázku 10. Zadaný text z pole dostaneme takto: String text=edittext.gettext().tostring();

39 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) Tla ítko (Button) a listenery Obrázek 10: Text a textové pole Tla ítko je základní prvek, který vykonává n jakou akci, jeho t ída je android.widget.button. Hlavní reakce na tla ítku je klik (zpravidla dotyk na dotykové obrazovce nebo stisknutí trackballu/p íslu²ného potvrzovacího tla ítka). Podobn jako v jiných GUI Javových frameworcích se zde pouºívá listener. Zaregistrujeme p íslu²ný listener, který pouºívá dané rozhraní: Button tlacitko = (Button)activity.findViewById(R.id.tlacitko) ; tlacitko.setonclicklistener(new View.OnClickListener() { // tady vzniká anonymní vnitřní třída public void onclick(view v) { } }); //tady něco udělej Tento listener lze zaregistrovat na v t²in prvk. Není v²ak jediným svého druhu, máme dal²í typy listener, které pouºíváme v následujících p ípadech: ˆ View.OnLongClickListener - pokud stiskneme dotykovou obrazovku a drºíme jí del²í dobu, nebo na del²í stisk trackballu ˆ View.OnFocusChangeListener - pokud se zm ní (získá nebo ztratí) aktuální zam ení 21 polí ka ˆ View.OnKeyListener - pokud stiskneme klávesu ˆ View.OnTouchListener - pokud je proveden dotyk nebo se naopak dotýkat p estaneme ˆ View.OnContextMenuListener - pokud se má otev ít kontextová nabídka, více k nabídkám v kapitole 3.3.6

40 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) 32 Obrázek 11: Varianty tla ítek Dal²ími variantami tla ítek jsou tla ítka ukázána na obrázku 11.: ˆ android.widget.imagebutton - obrázková tla ítka ˆ android.widget.togglebutton - p epínací tla ítka za²krtávátka ˆ android.widget.checkbox - zatrhávátka ˆ android.widget.radiobutton - radiobuttony Adaptérové prvky a adaptéry Mnoho prvk v Androidu zobrazuje n jaká data, asto p ímo z n kterého poskytovatele obsahu (viz. kapitola 2.3.3). Zobrazují tak seznamy t chto dat. Propojení mezi daty a prvkem GUI zaji² uje objekt, který se nazývá adaptér. Je n kolik druh adaptér a m ºeme od nich odvozovat své vlastní adaptéry: ˆ android.widget.arrayadapter<t> - tento adaptér mapuje jeden datový sloupe ek uloºený v poli na jeden prvek v rozvrºení ˆ android.widget.cursoradapter - tento adaptér mapuje jeden datový sloupe ek uloºený v kurzoru na jeden prvek v rozvrºení ˆ android.widget.simpleadapter - tento adaptér mapuje data uloºená v ArrayListu na p íslu²né prvky v rozloºení, m ºe mapovat na více prvk ˆ android.widget.resourcecursoradapter - tento adaptér mapuje jeden datový sloupe ek uloºený v kurzoru na jeden prvek v rozvrºení ˆ android.widget.simplecursoradapter - tento adaptér mapuje data z kurzoru na prvky v rozvrºení

41 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) 33 Obrázek 12: ListView v PrikladProvideru Jedním z prvk vyuºívající adaptéry je android.widget.listview, který slouºí k zobrazení posuvného seznamu (viz. obrázek 12 a p íklad PrikladProvideru na CD v p íloze A). Dal²í asto pouºívané prvky, které pouºívají adaptéry jsou: ˆ android.widget.gridview - který prvky zarovnává na rozdíl od ListView do m íºky ˆ android.widget.spinner - prvek, který je z klasických GUI znám pod pojmem combobox (vyskakovací roletové menu) Toust (Toast) Tousty jsou krátké texty, které se zobrazí na obrazovce po dobu zpravidla n kolika sekund: Toast.makeText(getApplicationContext(), "Ahoj světe!", 1).show (); Slouºí k okamºitému upozorn ní uºivatele. Pouºity jsou také v PrikladIntenty (viz. CD - p íloha A). 21 k zam ení polí ka dochází pokud na n j klikneme, pokud klikneme jinam zam ení se ztrácí

42 3 NÁVRH GRAFICKÉHO UšIVATELSKÉHO ROZHRANÍ (GUI) Notikace Android disponuje systémem notikací, které upozor ují uºivatele na v²echny d leºité události, ke kterým do²lo nebo které probíhají. Notikace jsou v grackém rozhraní na dotykovém displeji dostupné tahem za horní li²tu sm rem dol (viz. obrázek 13). Obsahují typicky informace o do²lých SMS, zme²kaných hovorech, apod. Také zp sobují blikání signaliza ní diody, spu²t ní zvuku a vibraci telefonu. Obrázek 13: Systém notikací v Androidu K systému notikací m ºeme p istupovat metodou getsystemservice( Context.NOTIFICATION_SERVICE), která vrátí objekt typu android.app.notificationmanager. Na n m lze spou²t t notikace, které jsou denovány objektem typu android.app.notification, kde lze denovat vzhled notikace - ikonu a textový popis a tzv. odloºený intent, ten je typu android.app.pendingintent, vytvá í se za pomocí b ºného intentu a zp sobí pak vyvolání p íslu²ného intentu p i klepnutí na notikaci. P íklad na notikaci je v PrikladVlakna (viz. CD - p íloha A) Tvorba nabídek Jako v kaºdém grackém uºivatelském rozhraní, tak ani na Androidu, nesmí chyb t nabídky (menu). V p ípad Androidu jsou omezeny na t i typy nabídek:

IP kamerový systém Catr - uºivatelský návod k obsluze

IP kamerový systém Catr - uºivatelský návod k obsluze IP kamerový systém Catr - uºivatelský návod k obsluze Obsah P ipoj se k nám! Úvod 3 P ístup do systému 3 Po íta s Windows 3 Prvotní instalace 3 Ovládání kamerového systému na po íta i 5 šivý náhled...................................................

Více

BOZP - akcepta ní testy

BOZP - akcepta ní testy BOZP - akcepta ní testy Kristýna Streitová Zadavatel: Ing. Ji í Chludil 13. prosince 2011 Obsah 1 Úvod 2 1.1 Popis test....................................... 2 2 Testy 3 2.1 ID - 1 P ihlá²ení do systému.............................

Více

Vektory. Vektorové veli iny

Vektory. Vektorové veli iny Vektor je veli ina, která má jak velikost tak i sm r. Ob tyto vlastnosti musí být uvedeny, aby byl vektor stanoven úpln. V této ásti je návod, jak vektory zapsat, jak je s ítat a od ítat a jak je pouºívat

Více

P íklad 1 (Náhodná veli ina)

P íklad 1 (Náhodná veli ina) P íklad 1 (Náhodná veli ina) Uvaºujeme experiment: házení mincí. Výsledkem pokusu je rub nebo líc, ºe padne hrana neuvaºujeme. Pokud hovo íme o náhodné veli in, musíme p epsat výsledky pokusu do mnoºiny

Více

DeepBurner (testování UI)

DeepBurner (testování UI) ƒeské vysoké u ení technické v Praze Fakulta elektrotechnická Semestrální práce DeepBurner (testování UI) Blaºej, Friebel, Olexová, Volf P edm t: Testování uºivatelských rozhraní Obor: Softwarové inºenýrství

Více

Integrování jako opak derivování

Integrování jako opak derivování Integrování jako opak derivování V tomto dokumentu budete seznámeni s derivováním b ºných funkcí a budete mít moºnost vyzkou²et mnoho zp sob derivace. Jedním z nich je proces derivování v opa ném po adí.

Více

Specifikace systému ESHOP

Specifikace systému ESHOP Nabídka: Specifikace systému ESHOP březen 2009 Obsah 1 Strana zákazníka 1 1.1 Nabídka produkt, strom kategorií..................... 1 1.2 Objednávka a ko²ík.............................. 1 1.3 Registrace

Více

Skalární sou in. Úvod. Denice skalárního sou inu

Skalární sou in. Úvod. Denice skalárního sou inu Skalární sou in Jedním ze zp sob, jak m ºeme dva vektory kombinovat, je skalární sou in. Výsledkem skalárního sou inu dvou vektor, jak jiº název napovídá, je skalár. V tomto letáku se nau íte, jak vypo

Více

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13 Seminá e Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS ZS 2010/11, sem.

Více

Termíny zkoušek Komise Komise. subkomise 1 (obhaj.) :30 B subkomise 2 (obhaj.) :30 B8 120

Termíny zkoušek Komise Komise. subkomise 1 (obhaj.) :30 B subkomise 2 (obhaj.) :30 B8 120 Základní informace o struktu e dat: Komise (nadkomise) obsahují leny schválené VR (po jejich identifikaci v SIS, p íp. dopln ní budou obsahovat všechny schválené leny, po novém za azení se vyplní datum

Více

Limity funkcí v nevlastních bodech. Obsah

Limity funkcí v nevlastních bodech. Obsah Limity funkcí v nevlastních bodech V tomto letáku si vysv tlíme, co znamená, kdyº funkce mí í do nekone na, mínus nekone na nebo se blíºí ke konkrétnímu reálnému íslu, zatímco x jde do nekone na nebo mínus

Více

Uºivatelská p íru ka Octopus

Uºivatelská p íru ka Octopus Uºivatelská p íru ka Octopus Jan Bojko 11. prosince 2014 Abstrakt Uºivatelská p íru ka k aplikaci Octopus. Obsah 1 Úvod 2 2 P ihlá²ení 2 3 Naviga ní menu 2 4 Práce s tabulkou 3 5 Editace 6 5.1 Nový záznam.............................

Více

IPCorder KNR-100 Instala ní p íru ka

IPCorder KNR-100 Instala ní p íru ka IPCorder KNR-100 Instala ní p íru ka 12. srpna 2007 2 Obsah 1 Instalace 5 1.1 Obsah balení....................................... 5 1.2 Instalace pevného disku................................. 5 1.3 Zapojení

Více

Binární operace. Úvod. Pomocný text

Binární operace. Úvod. Pomocný text Pomocný text Binární operace Úvod Milí e²itelé, binární operace je pom rn abstraktní téma, a tak bude ob as pot eba odprostit se od konkrétních p íklad a podívat se na v c s ur itým nadhledem. Nicmén e²ení

Více

funkční na dual-sim telefonech možnost přesměrovat příchozí hovory možnost nastavení více telefonních čísel pro případ, že je jedno nedostupné

funkční na dual-sim telefonech možnost přesměrovat příchozí hovory možnost nastavení více telefonních čísel pro případ, že je jedno nedostupné Analyzujte, navrhněte a implementujte aplikaci pro sledování spánku dětí Chůvička pro telefony na platformě Android. Od existujících aplikací se bude aplikace odlišovat tímto: funkční na dual-sim telefonech

Více

e²ení systém lineárních rovnic pomocí s ítací, dosazovací a srovnávací metody

e²ení systém lineárních rovnic pomocí s ítací, dosazovací a srovnávací metody e²ení systém lineárních rovnic pomocí s ítací, dosazovací a srovnávací metody V praxi se asto setkávame s p ípady, kdy je pot eba e²it více rovnic, takzvaný systém rovnic, obvykle s více jak jednou neznámou.

Více

Uºivatelská p íru ka k programu SlaFoR verze 1.0

Uºivatelská p íru ka k programu SlaFoR verze 1.0 1 Uºivatelská p íru ka k programu SlaFoR verze 1.0 Toto je manuál k programu SlaFoR 1.0 (Slab Forces & Reinforcement), který byl vytvo en v rámci bakalá ské práce na kated e betonových a zd ných konstrukcí

Více

Nastavení vestav ného p evodníku Ethernet -> sériová linka ES01

Nastavení vestav ného p evodníku Ethernet -> sériová linka ES01 KMB systems, s. r. o. Dr. M. Horákové 559, 460 06 Liberec 7, Czech Republic tel. +420 485 130 314, fax +420 482 736 896 E-mail: kmb@kmb.cz, Web: www.kmb.cz Nastavení vestav ného p evodníku Ethernet ->

Více

WEBMAP Mapový server PŘÍRUČKA PRO WWW UŽIVATELE. 2005-2008 Hydrosoft Veleslavín, s.r.o., U Sadu 13, Praha 6 www.hydrosoft.eu

WEBMAP Mapový server PŘÍRUČKA PRO WWW UŽIVATELE. 2005-2008 Hydrosoft Veleslavín, s.r.o., U Sadu 13, Praha 6 www.hydrosoft.eu WEBMAP Mapový server PŘÍRUČKA PRO WWW UŽIVATELE 2005-2008 Hydrosoft Veleslavín, s.r.o., U Sadu 13, Praha 6 www.hydrosoft.eu Obsah Obsah 1 1.1 3 Internetový... prohlížeč map 4 Rozložení ovládacích... prvků

Více

Návod pro vzdálené p ipojení do sít UP pomocí VPN pro MS Windows 7

Návod pro vzdálené p ipojení do sít UP pomocí VPN pro MS Windows 7 Návod pro vzdálené p ipojení do sít UP pomocí VPN pro MS Windows 7 1. Úvod nezbytné kroky ne se p ipojíte 2. Jak si vytvo it heslo 3. Nastavení VPN p ipojení pro Windows 7 1. Úvod Slu ba VPN umo uje vstoupit

Více

T i hlavní v ty pravd podobnosti

T i hlavní v ty pravd podobnosti T i hlavní v ty pravd podobnosti 15. kv tna 2015 První p íklad P edstavme si, ºe máme atomy typu A, které se samovolným radioaktivním rozpadem rozpadají na atomy typu B. Pr m rná doba rozpadu je 3 hodiny.

Více

Konceptuální modelování

Konceptuální modelování Konceptuální modelování Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS

Více

Mapa kamer mobilní aplikace pro Android

Mapa kamer mobilní aplikace pro Android ƒeské vysoké u ení technické v Praze Fakulta stavební Projekt Informatika 2 Akedemický rok 2012/2013 Mapa kamer mobilní aplikace pro Android Dokumentace Auto i: Martin Lºí a Dan Dluho² Michal Med Vedoucí:

Více

WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE

WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE Úvodem WD je mobilní verze klasického WEBDISPEČINKU, která je určena pro chytré telefony a tablety. Je k dispozici pro platformy ios a Android,

Více

Informace a návod k pouºití ablony pro BP student FZS v Plzni. Ing. Petr V elák 20. únor 2012

Informace a návod k pouºití ablony pro BP student FZS v Plzni. Ing. Petr V elák 20. únor 2012 Informace a návod k pouºití ablony pro BP student FZS v Plzni Ing. Petr V elák 20. únor 2012 1 OBSAH OBSAH Obsah 1 P edmluva 4 2 Formátování a úprava bakalá ské práce 5 2.1 Vzhled stran........................................

Více

Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011

Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011 Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011 1 Úvod P i platebním styku obvykle dochází k p esun m pen ºních prost edk mezi plátcem a p íjemcem platby. Banka p i této transakci

Více

Sazba zdrojových kód. Jakub Kadl ík 20. 03. 2014

Sazba zdrojových kód. Jakub Kadl ík 20. 03. 2014 Sazba zdrojových kód Jakub Kadl ík 20. 03. 2014 1 Obsah 1 Základní prost edí verbatim 3 2 Balí ek listings 3 3 Sazba kódu z externího souboru 5 4 Téma Solarized 5 4.1 Solarized light.............................

Více

Manuál uživatele čipové karty s certifikátem

Manuál uživatele čipové karty s certifikátem Manuál uživatele čipové karty s certifikátem Obsah 1 Úvod... 3 2 Instalace čipové karty s certifikátem... 5 3 Instalace čtečky čipových karet... 10 3.1 Instalace z Windows Update... 10 3.2 Manuální instalace

Více

Bezpe nost mobilní komunikace

Bezpe nost mobilní komunikace Bezpe nost mobilní komunikace Tomá² Vávra UKRY 9. kv tna 2011 Obsah 1 Útoky 2 Obrana 3 Cryptocult 4 Realita 5 Jiná ochrana Obsah 1 Útoky 2 Obrana 3 Cryptocult 4 Realita 5 Jiná ochrana Obsah 1 Útoky 2 Obrana

Více

Obsah. I Zakázka na dodávku audiovizuální techniky v etn montáºe, zapojení a pro²kolení 1. II Technická specikace zakázky 2. III Kontaktní osoba 7

Obsah. I Zakázka na dodávku audiovizuální techniky v etn montáºe, zapojení a pro²kolení 1. II Technická specikace zakázky 2. III Kontaktní osoba 7 ZÁKLADNÍ KOLA LITOM ICE, BOšENY N MCOVÉ 2 Boºeny N mcové 2, 412 01 Litom ice e-mail: skolabn@skolabn.cz, telefon: 416 735 797 IƒO 46773312 web: www.skolabn.cz Obsah I Zakázka na dodávku audiovizuální techniky

Více

Základní praktikum laserové techniky

Základní praktikum laserové techniky Základní praktikum laserové techniky Fakulta jaderná a fyzikáln inºenýrská Úloha 4: Zna kování TEA CO 2 laserem a m ení jeho charakteristik Datum m ení: 1.4.2015 Skupina: G Zpracoval: David Roesel Kruh:

Více

Android Elizabeth. Verze: 1.3

Android Elizabeth. Verze: 1.3 Android Elizabeth Program pro měření mezičasů na zařízeních s OS Android Verze: 1.3 Naposledy upraveno: 12. března 2014 alesrazym.cz Aleš Razým fb.com/androidelizabeth Historie verzí Verze Datum Popis

Více

Vektor náhodných veli in - práce s více prom nnými

Vektor náhodných veli in - práce s více prom nnými Vektor náhodných veli in - práce s více prom nnými 12. kv tna 2015 N kdy k popisu n jaké situace pot ebujeme více neº jednu náhodnou veli inu. Nap. v k, hmotnost, vý²ku. Mezi t mito veli inami mohou být

Více

Odpov di na dotazy k ve ejné zakázce. 30/2014-53-27. SSZ Registr IKP

Odpov di na dotazy k ve ejné zakázce. 30/2014-53-27. SSZ Registr IKP Odpov di na dotazy k ve ejné zakázce. 30/2014-53-27 SSZ Registr IKP 1. V dokumentu 4_Priloha_1_Specifikace-predmetu-technicke-pozadavky_Rozvoj-podpora-RIKP v kapitole 2.1 Popis architektury a vazeb v APV

Více

Uživatelská dokumentace

Uživatelská dokumentace Uživatelská dokumentace k projektu Czech POINT Provozní řád Konverze dokumentů z elektronické do listinné podoby (z moci úřední) Vytvořeno dne: 29.11.2011 Verze: 2.0 2011 MVČR Obsah 1. Přihlášení do centrály

Více

Základy informatiky I

Základy informatiky I 1 Základy informatiky I Jste p ihlášeni jako Testovácí Student (Odhlásit se) Titulní stránka Moje kurzy Základy informatiky I ZI1 Základy informatiky I Novinky Osnova p edm tu Seznam použitých zkratek

Více

ICT plán školy 2015/2016

ICT plán školy 2015/2016 Základní škola s rozšířeným vyučováním informatiky a výpočetní techniky ICT plán školy 2015/2016 1. Základní údaje o škole Název školy: Základní škola s rozšířeným vyučováním informatiky a výpočetní techniky

Více

Prezentace. Ing. Petr V elák 6. b ezna 2009

Prezentace. Ing. Petr V elák 6. b ezna 2009 Prezentace Ing. Petr V elák 6. b ezna 2009 1 OBSAH OBSAH Obsah 1 Úvodní slovo 3 2 P íprava prezentace 4 2.1 Jak prezentace ned lat........................ 4 2.1.1 Kontrast písma a pozadí...................

Více

Online komunikace a videokonference

Online komunikace a videokonference Online komunikace a videokonference Vít Rus ák PROJEKT nancovaný z Opera ního programu Vzd lávání pro konkurenceschopnost ZVY OVÁNÍ IT GRAMOTNOSTI ZAM STNANC VYBRANÝCH FAKULT MU Registra ní íslo: CZ.1.07/2.2.00/15.0224

Více

PROCESORY. Typy procesorů

PROCESORY. Typy procesorů PROCESORY Procesor (CPU Central Processing Unit) je ústřední výkonnou jednotkou počítače, která čte z paměti instrukce a na jejich základě vykonává program. Primárním úkolem procesoru je řídit činnost

Více

Mikromarz. CharGraph. Programovatelný výpočtový měřič fyzikálních veličin. Panel Version. Stručná charakteristika:

Mikromarz. CharGraph. Programovatelný výpočtový měřič fyzikálních veličin. Panel Version. Stručná charakteristika: Programovatelný výpočtový měřič fyzikálních veličin Stručná charakteristika: je určen pro měření libovolné fyzikální veličiny, která je reprezentována napětím nebo ji lze na napětí převést. Zpětný převod

Více

Národního registru u ivatel léka sky indikovaných substitu ních látek (papírové hlá enky)

Národního registru u ivatel léka sky indikovaných substitu ních látek (papírové hlá enky) PRAVIDLA A FORMULÁ E PRO ZAVÁD NÍ/RU ENÍ U IVATEL do Národního registru u ivatel léka sky indikovaných substitu ních látek (papírové hlá enky) 1 ZAVÁD NÍ NOVÝCH U IVATEL 1.1 Zpravodajské jednotky (Zdra

Více

Fakulta elektrotechnická

Fakulta elektrotechnická ƒeské VYSOKÉ UƒENÍ TECHNICKÉ Fakulta elektrotechnická SMS a MMS Semestrální práce Ond ej Veli ka Obsah 1 SMS (Short Message Service) 3 1.1 Historie.......................................... 3 1.2 Technické

Více

MATURITNÍ PRÁCE dokumentace

MATURITNÍ PRÁCE dokumentace MATURITNÍ PRÁCE dokumentace Jídelníček SŠIEŘ pro Android Martin Bartoň školní rok: 2012/2013 obor: třída: Počítačové systémy PS4.A ABSTRAKT Práce je zaměřená na problematiku tvorby Android aplikací,

Více

Soft Computing (SFC) 2014/2015 Demonstrace u ení sít RCE, Java aplikace

Soft Computing (SFC) 2014/2015 Demonstrace u ení sít RCE, Java aplikace Soft Computing (SFC) 2014/2015 Demonstrace u ení sít RCE, Java aplikace Franti²ek N mec (xnemec61) xnemec61@stud.t.vutbr.cz 1 Úvod Úkolem tohoto projektu bylo vytvo it aplikaci, která bude demonstrovat

Více

Knihovna QT4 a moºnosti jejího vyuºití

Knihovna QT4 a moºnosti jejího vyuºití Fakulta jaderná a fyzikáln inºenýrská ƒeské vysoké u ení technické v Praze 2.6.2010 Osnova 1 Úvod 2 Seznámení s Qt4 3 Prost edí QtCreator 4 Vyuºití v praxi Problém Aplikace pro ovládání realtime PCR za

Více

Úvod, terminologie. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 1

Úvod, terminologie. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 1 Úvod, terminologie Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS ZS 2010/11,

Více

IP kamerový systém - uživatelský návod k obsluze

IP kamerový systém - uživatelský návod k obsluze IP kamerový systém - uživatelský návod k obsluze _ Připoj se k nám! Obsah Úvod 2 Přístup do systému 2 Počítač s Windows 2 Prvotní instalace 2 Ovládání kamerového systému na počítači 3 Živý náhled...................................................

Více

účetních informací státu při přenosu účetního záznamu,

účetních informací státu při přenosu účetního záznamu, Strana 6230 Sbírka zákonů č. 383 / 2009 Částka 124 383 VYHLÁŠKA ze dne 27. října 2009 o účetních záznamech v technické formě vybraných účetních jednotek a jejich předávání do centrálního systému účetních

Více

Team Engineering. New in V13. TIA Portal news. Restricted / Siemens AG 2014. All Rights Reserved.

Team Engineering. New in V13. TIA Portal news. Restricted / Siemens AG 2014. All Rights Reserved. Team TIA Portal news siemens.com/s7-1500 Teamengineering jak pracovat v týmu PLC proxy pro práce v týmu pro a PLC inženýry lze uplatnit také v prost edí Classic Kopie a slou ení projekt vzájemné sdílení

Více

112 LINKA TÍSŇOVÝCH VOLÁNÍ

112 LINKA TÍSŇOVÝCH VOLÁNÍ 112 LINKA TÍSŇOVÝCH VOLÁNÍ 112 GIS PRINCIPY SYSTÉMU Plné územní pokrytí ČR na shodné úrovni kvality. Přenos zpracování z okresní úrovně (77 okresů) na krajskou úroveň (14 krajů). Podpora příjmu volání

Více

1. Požadavky na provoz aplikací IISPP

1. Požadavky na provoz aplikací IISPP 1. Požadavky na provoz aplikací IISPP 1.1. Podporované prohlížeče Aplikace IISPP jsou primárně vyvíjeny a testovány v prohlížečích Internet Explorer a Mozilla Firefox. V jiných než uvedených prohlížečích

Více

Mobilní aplikace. Dokument nepopisuje administrační rozhraní (backend) ani napojení na příbuzné databáze.

Mobilní aplikace. Dokument nepopisuje administrační rozhraní (backend) ani napojení na příbuzné databáze. oolczechguide Mobilní aplikace! O dokumentu Tento dokument popisuje uživatelské rozhraní nativní mobilní aplikace CoolCzechGuide pro operační systémy Android (verze 4 a výše) a ios (verze 7 a výše). Popisuje

Více

Pr b h funkce I. Obsah. Maxima a minima funkce

Pr b h funkce I. Obsah. Maxima a minima funkce Pr b h funkce I Maxima a minima funkce V této jednotce ukáºeme jak derivování m ºe být uºite né pro hledání minimálních a maximálních hodnot funkce. Po p e tení tohoto letáku nebo shlédnutí instruktáºního

Více

Novinky verzí SKLADNÍK 4.24 a 4.25

Novinky verzí SKLADNÍK 4.24 a 4.25 Novinky verzí SKLADNÍK 4.24 a 4.25 Zakázky standardní přehled 1. Možnosti výběru 2. Zobrazení, funkce Zakázky přehled prací 1. Možnosti výběru 2. Mistři podle skupin 3. Tisk sumářů a skupin Zakázky ostatní

Více

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy -1- I I. N á v r h VYHLÁŠKY ze dne 2009 o účetních záznamech v technické formě vybraných účetních jednotek a jejich předávání do centrálního systému účetních informací státu a o požadavcích na technické

Více

Manuál Kentico CMSDesk pro KDU-ČSL

Manuál Kentico CMSDesk pro KDU-ČSL Manuál Kentico CMSDesk pro KDU-ČSL 2011 KDU-ČSL Obsah 1 Obecně... 3 1.1 Přihlašování... 3 1.2 Uživatelské prostředí... 4 2 Stránky... 4 2.1 Vytvoření nové stránky... 4 2.1.1 Texty... 7 2.1.2 Styly textu...

Více

Za ízení TouchPad aklávesnice

Za ízení TouchPad aklávesnice Za ízení TouchPad aklávesnice Číslo dokumentu: 430406-221 Leden 2007 Tato příručka popisuje funkce zařízení TouchPad a klávesnice počítače. Obsah 1 Za ízení TouchPad Popis zařízení TouchPad.........................

Více

Obec Nová Ves. Zm na. 1, kterou se m ní Územní plán Nová Ves

Obec Nová Ves. Zm na. 1, kterou se m ní Územní plán Nová Ves Obec Nová Ves. j.: V Nové Vsi dne Zm na. 1, kterou se m ní Územní plán Nová Ves Zastupitelstvo obce Nová Ves, p íslu né podle ustanovení 6 odst. 5 písm. c) zákona. 183/2006 Sb., o územním plánování a stavebním

Více

Server. Software serveru. Služby serveru

Server. Software serveru. Služby serveru Server Server je v informatice obecné označení pro počítač či skupinu počítačů, kteří poskytují nějaké služby. Rovněž pojmem server můžeme označit počítačový program, který tyto služby realizuje. Služby

Více

Bezpečnostní pokyny. Nepoužívejte tablet v mimořádně studeném nebo horkém, prašném, vlhkém nebo suchém prostředí. Zabraňte pádu zařízení.

Bezpečnostní pokyny. Nepoužívejte tablet v mimořádně studeném nebo horkém, prašném, vlhkém nebo suchém prostředí. Zabraňte pádu zařízení. Bezpečnostní pokyny Nepoužívejte tablet v mimořádně studeném nebo horkém, prašném, vlhkém nebo suchém prostředí. Zabraňte pádu zařízení. Prosím, nabíjejte baterie, když: o symbol baterie ukazuje, že je

Více

ízení Tvorba kritéria 2. prosince 2014

ízení Tvorba kritéria 2. prosince 2014 ízení. prosince 014 Spousta lidí má pocit, ºe by m la n co ídit. A n kdy to bývá pravda. Kdyº uº nás my²lenky na ízení napadají, m li bychom si poloºit následující t i otázky: ídit? Obrovskou zku²eností

Více

Dálkové p enosy ze za ízení aktivní protikorozní ochrany Severomoravské plynárenské, a.s.

Dálkové p enosy ze za ízení aktivní protikorozní ochrany Severomoravské plynárenské, a.s. Dálkové p enosy ze za ízení aktivní protikorozní ochrany Severomoravské plynárenské, a.s. Tomáš D dina, Lubomír Herman Severomoravská plynárenská, a.s. Hlavní d vody realizace Podmínkou bezpe nosti a spolehlivosti

Více

Testovací aplikace Matematika není věda

Testovací aplikace Matematika není věda Testovací aplikace Matematika není věda Příručka k http://matematika.komenacek.cz/ Příručka k portálu http://matematika.komenacek.cz/ 2 Uživatelská příručka k portálu 202 BrusTech s.r.o. Všechna práva

Více

ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ

ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ Pozemkem se podle 2 písm. a) katastrálního zákona rozumí část zemského povrchu, a to část taková, která je od sousedních částí zemského povrchu (sousedních pozemků)

Více

DOTWALKER NAVIGACE PRO NEVIDOMÉ A SLABOZRAKÉ

DOTWALKER NAVIGACE PRO NEVIDOMÉ A SLABOZRAKÉ DOTWALKER NAVIGACE PRO NEVIDOMÉ A SLABOZRAKÉ Libor DOUŠEK, Marek SUSČÍK ACE Design, s.r.o., Drážní 7, Brno, oko@acedesign.cz Anotace: DotWalker je aplikace pro usnadnění cestování zrakově hendikepovaných

Více

ŽÁDOST O VYDÁNÍ ROZHODNUTÍ O UMÍST NÍ STAVBY ÁST A

ŽÁDOST O VYDÁNÍ ROZHODNUTÍ O UMÍST NÍ STAVBY ÁST A P íloha. 1 k vyhlášce. 503/2006 Sb. Adresa p íslušného ú adu Ú ad:... Ulice:... PS, obec:... V c: ŽÁDOST O VYDÁNÍ ROZHODNUTÍ O UMÍST NÍ STAVBY v územním ízení ve zjednodušeném územním ízení podle ustanovení

Více

Zákaznická linka: +420 585 496 211. Uživatelský manuál mobilní aplikace. Patriot EU

Zákaznická linka: +420 585 496 211. Uživatelský manuál mobilní aplikace. Patriot EU Zákaznická linka: +420 585 496 211 Uživatelský manuál mobilní aplikace Patriot EU 1.4.2016 1. OBSAH 1. OBSAH... 2 2. APLIKACE PATRIOT EU... 3 2.1 Stažení a instalaci aplikace... 3 2.2 Přidání vozidel do

Více

INTELIGENTNÍ DŮM. Zdeněk Kolář, Viktor Daněk. Střední průmyslová škola sdělovací techniky Panská 856/3, 110 00 Praha 1

INTELIGENTNÍ DŮM. Zdeněk Kolář, Viktor Daněk. Střední průmyslová škola sdělovací techniky Panská 856/3, 110 00 Praha 1 Středoškolská technika 2013 Setkání a prezentace prací středoškolských studentů na ČVUT INTELIGENTNÍ DŮM Zdeněk Kolář, Viktor Daněk Střední průmyslová škola sdělovací techniky Panská 856/3, 110 00 Praha

Více

Web n walk NÁVOD PRO UŽIVATELE. Manager

Web n walk NÁVOD PRO UŽIVATELE. Manager Web n walk NÁVOD PRO UŽIVATELE Manager Obsah 03 Úvod 04 Požadavky na hardware a software 04 Připojení zařízení k počítači 05 Uživatelské rozhraní 05 Výběr sítě 06 Připojení k internetu 06 Nastavení možností

Více

Adresa p íslušného ú adu. Ú ad:... Ulice:... PS, obec:...

Adresa p íslušného ú adu. Ú ad:... Ulice:... PS, obec:... P íloha. 2 k vyhlášce. 503/2006 Sb. Adresa p íslušného ú adu Ú ad:... Ulice:... PS, obec:... V c: ŽÁDOST O VYDÁNÍ ROZHODNUTÍ O ZM N VYUŽITÍ ÚZEMÍ v územním ízení ve zjednodušeném územním ízení podle ustanovení

Více

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java 3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java Studijní cíl V tomto bloku navážeme na konec předchozího bloku a seznámíme se s vývojovými prostředími, které se nejčastěji používají

Více

WinCC V7.3. SIMATIC Logon. Siemens, s.r.o., Digital Factory 2015 Všechnapráva vyhrazena. Strana1 2015-05 Ladislav Plachý / RC-CZ DF SUP

WinCC V7.3. SIMATIC Logon. Siemens, s.r.o., Digital Factory 2015 Všechnapráva vyhrazena. Strana1 2015-05 Ladislav Plachý / RC-CZ DF SUP WinCC V7.3 SIMATIC Logon Strana1 2015-05 Ladislav Plachý / RC-CZ DF SUP Sou ást Siemens industrial security konceptu Ochrana proti neautorizovanému p ístupu s využitím Windows mechanism Pro WinCC to znamená

Více

Videotelefon s hlasitým hovorem instalace do st ny, na st nu a na st l s barevným dotykovým širokoúhlým TFT, LCD 7 16:9 displejem

Videotelefon s hlasitým hovorem instalace do st ny, na st nu a na st l s barevným dotykovým širokoúhlým TFT, LCD 7 16:9 displejem Videotelefon s hlasitým hovorem instalace do st ny, na st nu a na st l s barevným dotykovým širokoúhlým TFT, LCD 7 16:9 displejem Videotelefon s hlasitým hovorem, instalací do st ny, na st nu a na st l

Více

Efektivní vyuºívání programových nástroj Ansys na infrastrukturách MetaCentra / CERIT-SC

Efektivní vyuºívání programových nástroj Ansys na infrastrukturách MetaCentra / CERIT-SC Efektivní vyuºívání programových nástroj Ansys na infrastrukturách MetaCentra / CERIT-SC Slávek Licehammer MetaCentrum 25. listopadu 2013 S. Licehammer (MetaCentrum) Efektivní vyuºívání programových nástroj

Více

MATURITNÍ PRÁCE dokumentace

MATURITNÍ PRÁCE dokumentace MATURITNÍ PRÁCE dokumentace 3D hra pro Android Petr Dobeš školní rok: 2012/2013 obor: třída: Elektronické počítačové systémy PS4B ABSTRAKT Tato maturitní práce se zabývá tvorbou hry Akarun, která je

Více

Federální shromáždění Československé socialistické republiky 1972. II. v. o. Stanovisko vlády ČSSR

Federální shromáždění Československé socialistické republiky 1972. II. v. o. Stanovisko vlády ČSSR Federální shromáždění Československé socialistické republiky 1972. II. v. o. 5 Stanovisko vlády ČSSR k úmluvám a doporučením přijatým na 55. Mezinárodní konferenci práce Na 55. zasedání Mezinárodní konference

Více

EurotestCOMBO MI 3125, MI 3125B pi kový kompaktní multifunk ní p ístroj na provád ní revizí dle po adavk SN

EurotestCOMBO MI 3125, MI 3125B pi kový kompaktní multifunk ní p ístroj na provád ní revizí dle po adavk SN EurotestCOMBO MI 3125, MI 3125B pi kový kompaktní multifunk ní p ístroj na provád ní revizí dle po adavk SN 332000-6-61 Pou ití: ení spojitosti Zkratový proud > 200 ma. M ení probíhá s automatickým epólováním

Více

M. Balíková, R. Záhořík, NK ČR 1

M. Balíková, R. Záhořík, NK ČR 1 M. Balíková, R. Záhořík, NK ČR 1 Geolink.nkp.cz Prototyp aplikace obohacení geografických autorit o údaje souřadnic s následným zobrazením dané lokality na mapě - kartografické matematické údaje v záznamech

Více

INFORMATIKA V CHOVECH PRASAT

INFORMATIKA V CHOVECH PRASAT INFORMATIKA V CHOVECH PRASAT Bajbár, M. KONFIRM, spol. s r.o. Tento článek si klade za cíl informovat odbornou veřejnost z oblasti chovu a šlechtění prasat o možnostech využití a základních analytických

Více

Metodika pro nákup kancelářské výpočetní techniky

Metodika pro nákup kancelářské výpočetní techniky Příloha č. 2 Metodika pro nákup kancelářské výpočetní techniky 1. Vymezení skupin výrobků Kancelářská výpočetní technika, jak o ni pojednává tento dokument, zahrnuje tři skupiny výrobků: počítače osobní

Více

Obsah. Pouºité zna ení 1

Obsah. Pouºité zna ení 1 Obsah Pouºité zna ení 1 1 Úvod 3 1.1 Opera ní výzkum a jeho disciplíny.......................... 3 1.2 Úlohy matematického programování......................... 3 1.3 Standardní maximaliza ní úloha lineárního

Více

Uživatelská příručka Rejstřík státních zaměstnanců

Uživatelská příručka Rejstřík státních zaměstnanců Informační systém o státní službě (ISoSS) Název dokumentu: Verze dokumentu: 1.2 (z 9. 12. 2015) Strana: 1/35 Historie dokumentu Historie revizí Číslo revize Datum revize Popis revize Změny označeny 1.0

Více

Zadání. Založení projektu

Zadání. Založení projektu Zadání Cílem tohoto příkladu je navrhnout symetrický dřevěný střešní vazník délky 13 m, sklon střechy 25. Materiálem je dřevo třídy C24, fošny tloušťky 40 mm. Zatížení krytinou a podhledem 0,2 kn/m, druhá

Více

Struktura třídy, operátory, jednoduché algoritmy, junit. Programování II 2. cvičení Alena Buchalcevová

Struktura třídy, operátory, jednoduché algoritmy, junit. Programování II 2. cvičení Alena Buchalcevová Struktura třídy, operátory, jednoduché algoritmy, junit 2. cvičení Alena Buchalcevová Cíle cvičení seznámit se s rozhraním (interface) v Javě seznámit se s testováním při vývoji (makety, JUnit) naučit

Více

Centrum digitální optiky

Centrum digitální optiky Centrum digitální optiky Pracovní balí ek. 2 - Digitální Ramanova spektroskopie a Ramanova optická aktivita Software pro synchronní ízení systém pro p esné polohování optických komponent Interní i.. RC201302

Více

PR VODCE NASTAVENÍM MODELU

PR VODCE NASTAVENÍM MODELU PR VODCE NASTAVENÍM MODELU Program SVIT simuluje a současně vizualizuje chování technologických zařízení typu nádoba se vstupy a výstupy, jako jsou nádrže, reaktory či výměníky tepla. Je implementován

Více

Záloha a obnovení Uživatelská příručka

Záloha a obnovení Uživatelská příručka Záloha a obnovení Uživatelská příručka Copyright 2009 Hewlett-Packard Development Company, L.P. Windows je ochranná známka společnosti Microsoft Corporation registrovaná v USA. Informace uvedené v této

Více

Program Power Cinema 3

Program Power Cinema 3 Program Power Cinema 3 Nastavení tuneru 1. OBECNÉ V hlavním menu programu klikn te na NASTAVENÍ a vyberte Pr vodce nastavením v menu typ obrazovky zvolte odpovídající typ podle monitoru jaký pou íváte.

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování V algoritmizaci a programování je důležitá schopnost analyzovat a myslet. Všeobecně jsou odrazovým můstkem pro řešení neobvyklých, ale i každodenních problémů. Naučí nás rozdělit

Více

21 SROVNÁVACÍ LCA ANALÝZA KLASICKÝCH ŽÁROVEK A KOMPAKTNÍCH ZÁŘIVEK

21 SROVNÁVACÍ LCA ANALÝZA KLASICKÝCH ŽÁROVEK A KOMPAKTNÍCH ZÁŘIVEK 21 SROVNÁVACÍ LCA ANALÝZA KLASICKÝCH ŽÁROVEK A KOMPAKTNÍCH ZÁŘIVEK Pavel Rokos ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Katedra elektrotechnologie Úvod Světelné zdroje jsou jedním

Více

Prohlá²ení. V Praze dne 18. dubna 2010...

Prohlá²ení. V Praze dne 18. dubna 2010... ƒeské vysoké u ení technické v Praze Fakulta elektrotechnická Katedra po íta Bakalá ská práce Studentova Berli ka III - Jádro aplikace Jaromír Van k Vedoucí práce: Ing. Ji í Chludil Studijní program: Softwarové

Více

Postup registrace pracovní doby

Postup registrace pracovní doby 1 Obsah Evidence pracovní doby... 4... 4 V... 8 Na tabletu... 11... 13... 14 Pracovní cesta... 15 Práce z domu... 17... 18... 18 Nemoc... 19 Dovolená... 20 Náhradní volno... 21 Neplacené volno... 22 Placené

Více

Data v počítači EIS MIS TPS. Informační systémy 2. Spojení: e-mail: jan.skrbek@tul.cz tel.: 48 535 2442 Konzultace: úterý 14 20-15 50

Data v počítači EIS MIS TPS. Informační systémy 2. Spojení: e-mail: jan.skrbek@tul.cz tel.: 48 535 2442 Konzultace: úterý 14 20-15 50 Informační systémy 2 Data v počítači EIS MIS TPS strategické řízení taktické řízení operativní řízení a provozu Spojení: e-mail: jan.skrbek@tul.cz tel.: 48 535 2442 Konzultace: úterý 14 20-15 50 18.3.2014

Více

Talos. Návod k obsluze

Talos. Návod k obsluze Talos Návod k obsluze Před prvním použitím Vážený uživateli, děkujeme vám za zakoupení tohoto výrobku. Abychom zajistili rychlé a pohodlné používání nového tabletu Ainol, přečtěte si prosím před použitím

Více

simphoto verze Manuál k aplikaci Autor: Datum:

simphoto verze Manuál k aplikaci Autor: Datum: Manuál k aplikaci simphoto verze 12.2010 Autor: David Datum: íºek 17.12. 2010 Obsah Úvod 2 1 Základní ovládání 3 2 Na tení snímku 3 3 Eliminace distorze objektivu 4 4 Tvorba fotoplánu p i m ených vlícovacích

Více

Seriál: Management projektů 7. rámcového programu

Seriál: Management projektů 7. rámcového programu Seriál: Management projektů 7. rámcového programu Část 4 Podpis Konsorciální smlouvy V předchozím čísle seriálu o Managementu projektů 7. rámcového programu pro výzkum, vývoj a demonstrace (7.RP) byl popsán

Více

HLAVA III PODROBNOSTI O VEDENÍ ÚST EDNÍHO SEZNAMU OCHRANY P ÍRODY

HLAVA III PODROBNOSTI O VEDENÍ ÚST EDNÍHO SEZNAMU OCHRANY P ÍRODY HLAVA III PODROBNOSTI O VEDENÍ ÚST EDNÍHO SEZNAMU OCHRANY P ÍRODY (K 42 odst. 2 zákona) 5 (1) Úst ední seznam ochrany p írody (dále jen "úst ední seznam") zahrnuje soupis, popis, geometrické a polohové

Více

GSM alarm INTELIGENTNÍ základna

GSM alarm INTELIGENTNÍ základna GSM alarm INTELIGENTNÍ základna Neumísťujte hlavní jednotku alarmu v blízkosti velkých kovových objektů, zařízení způsobujících vysokofrekvenční rušení a silných překážek jako například železobetonové

Více

Pravd podobnost a statistika - cvi ení. Simona Domesová místnost: RA310 (budova CPIT) web:

Pravd podobnost a statistika - cvi ení. Simona Domesová místnost: RA310 (budova CPIT) web: Pravd podobnost a statistika - cvi ení Simona Domesová simona.domesova@vsb.cz místnost: RA310 (budova CPIT) web: http://homel.vsb.cz/~dom0015 Cíle p edm tu vyhodnocování dat pomocí statistických metod

Více