Android za hranicemi Hello World



Podobné dokumenty
Začínáme s vývojem pro Android

Android 100% Java telefon. Petr Musil

Mobilní malware na platformě Android Přednáška 1. Ing. Milan Oulehla

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

KMI / TMA Tvorba mobilních aplikací

Obsah. Životní cyklus activity Context Intent Spouštění aktivit Interakce s uživatelem. Toast. (c) Miroslav Balík, Ondřej Kroupa, Martin Pelant

KMI / TMA Tvorba mobilních aplikací. 2. seminář ZS 2016/2017 Středa 13:15-15:45

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU

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

Základní informace a nastavení... 3

3. ŽIVOTNÍ CYKLUS ACTIVITY

Novinky v oblasti SAP Mobility. Martin Zikmund, Presale Mobility Platforms Miroslav Řehoř, Account Executive

(c) Miroslav Balík, Ondřej Kroupa, Martin Pelant 11/29/ přednáška. Android projekt. Manifest. Activity. Uživatelské rozhraní (základy)

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

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

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Uživatelský manuál mobilní aplikace My Connected Car

3.1.7 SKUPINY ZBOŢÍ. Pole pro definici filtrů a výběrových podmínek. Zobrazení agendy Skupiny zboţí. Zboží/Skupiny zboží. Web01

Obsah. Verze CLOUD... 5 Verze SERVER... 8 Verze DEMO Obecná konfigurace Nastavení zobrazení Základní informace

Tabletová aplikace Návod

Instalace aplikace 602XML Filler

Web. Získání informace z internetu Grafické zobrazení dat a jejich struktura Rozšíření funkcí pomocí serveru Rozšíření funkcí pomocí prohlížeče

Synchronizace kontaktů z ESO9 do MS Outlook

Bc. Martin Majer, AiP Beroun s.r.o.

Dětské hodinky s GPS. Návod k obsluze. Hlavní výhody přístroje: Jednoduché ovládání Malé rozměry Online mapový podklad

KIV/PIA 2013 Jan Tichava

Použití inteligentních značek s informačními službami

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

KIV/PIA 2012 Ing. Jan Tichava

Firmadat SMS Sender. aplikace pro odesílání SMS zpráv z Vašeho PC pomocí telefonu ZÁKLADNÍ INFORMACE A INSTALACE MILAN PASTOR, ROMAN NEPŠINSKÝ

Michal Augustýn Microsoft Most Valuable Professional

Možnosti aplikací Google pro analýzu (geo(

Mobilní aplikace. Uživatelský manuál

Firmadat SMS Sender. aplikace pro odesílání SMS zpráv z Vašeho PC pomocí telefonu ZÁKLADNÍ INFORMACE A INSTALACE MILAN PASTOR, ROMAN NEPŠINSKÝ

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


GPS lokátor vhodný pro ochranu starých lidí

Allegro framework. Podstatné vlastnosti. Allegro Business Solution Framework

Mobilní aplikace ve světě ERP. Asseco Solutions, a.s. a Simac Technik ČR, a.s.

Software602 Form Designer

První kapitola úvod do problematiky

Instalace a konfigurace web serveru. WA1 Martin Klíma

Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13

mobile device management. Martin Hnízdil Michal Vávra

Internetový obchod ES Pohoda Web Revolution

IceWarp Outlook Sync Rychlá příručka

Návod na provedení upgrade IS Harmonik

5. přednáška. Stylování a themování Themování Android Interface Definition Language Data Sdílení dat 11/29/11

Mobilní aplikace. Uživatelský manuál

Proč Angular JS framework?

Novinky. Autodesk Vault helpdesk.graitec.cz,

Uživatelský manuál mobilní aplikace My Connected Car

Sem vložte zadání Vaší práce.

Michal Andrejčák, Seminář Energetika v průmyslu, Hotel Vista Dolní Morava, Možnosti monitorování a ovládání Zpracování dat z rozvoden

Vytváření a použití knihoven tříd

Ovládání ústředny Visonic přes mobilní telefon

ANDROID. Ing. Ladislav Pešička

Kurz B1.1. Internet jako zdroj informací

UŽIVATELSKÉ ŠKOLENÍ LOTUS NOTES

Mobilní malware na platformě Android Přednáška 2. Ing. Milan Oulehla

KMI / TMA. Tvorba mobilních aplikací. 8. seminář ZS 2017/2018 ČTVRTEK 13:15-15:45

České vysoké učení technické v Praze. Fakulta Elektrotechniky XD39NUR. Semestrální práce. Ovládání videokonferencí pomocí mobilního telefonu

MicroTraq mini GPS lokátor s odposlechem

Rozklad na prvočinitele. 3. prosince 2010

Uživatelský modul. Transparent Mode

Uživatelská dokumentace

3. Software Bakaláři Kompletní školení

NIBE ENERGY SYSTEMS Komunikace s TČ pomocí modulu SMS 40 a NIBE Mobile App

Příručka pro editaci kontaktů na eagri

Instalační manuál k aplikaci LARA Dio pro Android

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML

Olga Rudikova 2. ročník APIN

(Enterprise) JavaBeans. Lekce 7

SIMATIC WinCC Data Monitor. Siemens s.r.o.

Na chvilku se vžijte do situace, kdy pořádáte jednodenní konferenci a potřebujete naplánovat jednotlivé přednášky včetně přestávek.

Jan Forman Manuál CLASSIFICATIO N: public / veřejný dokument IDE NTIFICATIO N N U MBER: AUTH OR:

ŘÍZENÍ POHLEDÁVEK A AUTOMATICKÉ UPOMÍNKY. Katalogový doplněk ABRA Gen

Bezdrátové routery LTE & UMTS datové a hlasové brány

Ekonomický GPS lokátor pro pevné připojení na autobaterii

Vybraná zajímavá Lotus Notes řešení použitelná i ve vašich aplikacích. David Marko TCL DigiTrade

Uživatelské rozhraní. Layouty FrameLayout LinearLayout RelativeLayout TableLayout ScrollView Taby Dialogy ViewFlipper 11/29/11

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

TÉMATICKÝ OKRUH Softwarové inženýrství

Specifikace požadavků. POHODA Web Interface. Verze 1.0. Datum: Autor: Ondřej Šrámek

plussystem Příručka k instalaci systému

Web Services na SOAP

MapleCloud a jeho použ ití. Vladimír Žák

InBiz VŠECHNO, CO JE MOŽNÉ

Uživatelský modul. wm-bus Concentrator

Projekt SONIA: příspěvek bank k rozvoji digitálního Česka

Analýza a Návrh. Analýza

Apache Cordova (PhoneGap 3)

GUI. Systémová integrace pro desktopové aplikace

GPS lokátor vhodný pro seniory

Workshop DSP Jan Medek, DiS. Data Agentura INFOPHARM s.r.o.

Transkript:

Android za hranicemi Hello World Pavel Petřek CTO Praha, 18. října 2009

Kdo je kdo Pavel Petřek Vývojář, entusiasta přes chytré telefony, přednášející Spoluzakladatel Inmite Inmite Vývoj pro chytré telefony (Android: OnTheRoad, Lokola, SMS jízdenka a další) Chytré webové aplikace na Google APIs Android Full-stack 2 z 31

Agenda Úvod Nástroje a stavební kameny aplikací na Androidu Browser a jeho interakce se systémem Integrujte, opakovaně využívejte, ale s rozmyslem Jak na ovládání aplikace Dostaňte maximum UI do XML konfigurace Život na baterie Otázky 3 z 31

Stavební kameny vývoje Android aplikací 1 APK jar s pevnou podstrukturou s AndroidManifest.xml Komponenty sdílejí zdroje, databáze, procesy,... Activities - komponenty UI odpovídající jednomu formuláři / obrazovce Services - služba bez interakce (UI) běžící na pozadí Content providers - cesta jak sdílet data ven z aplikace Broadcast Intent Receivers - naslouchadlo vzkazů z vnějšku (i zevnitř) 5 z 31

Stavební kameny vývoje Android aplikací 2 Každá komponenta má systémem řízený životní cyklus (managed lifecycle) Slovní spojení ukončení aplikace vývojáře v základu nezajímá Intent (komunikační balíček) + Intent filtry Intent intent = new Intent(Intent.ACTION_VIEW, "http://www.youtube.com/"); startactivity(intent); Přehrát Sdílet 6 z 31

Agenda Úvod Nástroje a stavební kameny aplikací na Androidu Browser a jeho interakce se systémem Integrujte, opakovaně využívejte, ale s rozmyslem Jak na ovládání aplikace Dostaňte maximum UI do XML konfigurace Život na baterie Otázky 7 z 31

Linky jako Intenty Každý webový link je Intent s akcí Intent.ACTION_VIEW Mapování na různá schémata, servery, cesty Dobrý doplněk již hotové webové aplikace Příklady: market://search?q=pname:eu.inmite.apps.smsjizdenka http://zxing.appspot.com/scan 8 z 31

Agenda Úvod Nástroje a stavební kameny aplikací na Androidu Browser a jeho interakce se systémem Integrujte, opakovaně využívejte, ale s rozmyslem Jak na ovládání aplikace Dostaňte maximum UI do XML konfigurace Život na baterie Otázky 9 z 31

Používejte již hotové aplikace Intenty + hotové dostupné aplikace = mocná zbraň Nemáte potřebnou aplikaci? Nabídněte její instalaci if (isintentavailable("com.google.scan")) { Intent intent = new Intent("com.google.SCAN"); intent.putextra("scan_mode", "QR_CODE_MODE"); startactivityforresult(intent, 0); } else { Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://search?q=pname:com.google.scan")); startactivity(intent); }... public static boolean isintentavailable(string action) { List list = context.getpackagemanager().queryintentactivities(new Intent(action), PackageManager.MATCH_DEFAULT_ONLY); return list.size() > 0; } pseudo-package pro zjednodušení 11 z 31

Agenda Úvod Nástroje a stavební kameny vývoje na Androidu Integrujte, opakovaně využívejte, ale s rozmyslem Jak na ovládání aplikace Dostaňte maximum UI do XML konfigurace Život na baterie Otázky 12 z 31

Pozor na dvojí druh focusu Android rozlišuje dva druhy focusu touch / trackball http://demo.inmite.eu/webexpo2009/webexpo-android-focus.avi 13 z 31

Neobtěžujte uživatele dialogy Pro jednoduché sdělení používejte Toasty http://demo.inmite.eu/webexpo2009/webexpo-android-toast.avi 14 z 31

Služba na pozadí? Interagujte z rozmyslem Notifikace z rozmyslem 15 z 31

Agenda Úvod Nástroje a stavební kameny aplikací na Androidu Browser a jeho interakce se systémem Integrujte, opakovaně využívejte, ale s rozmyslem Jak na ovládání aplikace Dostaňte maximum UI do XML konfigurace Život na baterie Otázky 17 z 31

Ukládejte maximum UI do XML 18 z 31

Myslete na Landscape 19 z 31

Animace layoutu - coolness za hubičku http://demo.inmite.eu/webexpo2009/webexpo-android-layout-animation.avi 22 z 31

Jeden balíček pro všechny telefony Konfigurace podoby, chování, jazyka, adres serverů, defaultních míst na mapě, aj. v jedné aplikaci? Odpověď je suffix v názvu adresáře konfigurace Skládá se layout-vlastnost1-vlastnost2 (např. layout-langcs-320x480) 23 z 31

Agenda Úvod Nástroje a stavební kameny aplikací na Androidu Browser a jeho interakce se systémem Integrujte, opakovaně využívejte, ale s rozmyslem Jak na ovládání aplikace Dostaňte maximum UI do XML konfigurace Život na baterie Otázky 24 z 31

Život na baterie ceny za běh 1 25 z 31

Život na baterie ceny za běh 2 Činnost Vaší aplikace znamená zatížení několika prvků Nejdražší, co můžete dělat? Neuvážené operace na pozadí Přenášet velká data na pomalém připojení Zapínat GPS, když ji nepotřebujete 26 z 31

Život na baterie co dělat lépe Sdružujte periodické operace na pozadí Dbejte na to, jak přenášíte data (technologie, komprese) Promyslete nakládání se zámky Stačí Vám hrubá pozice z CELL ID? Neaktivujte GPS Kódujte s rozmyslem, VM není zadarmo 27 z 31

Zdroje http://www.android.com/ http://groups.google.com/ http://code.google.com/events/io/ http://www.mujandroid.cz/ http://www.google.com/ 28 z 31

Agenda Úvod Nástroje a stavební kameny aplikací na Androidu Browser a jeho interakce se systémem Integrujte, opakovaně využívejte, ale s rozmyslem Jak na ovládání aplikace Dostaňte maximum UI do XML konfigurace Život na baterie Otázky 29 z 31

Otázky? 30 z 31